Skip to main content
All docs
V25.2
  • IContextMenuItemCollection.Clear() Method

    Removes all items from an item collection.

    Namespace: DevExpress.Blazor

    Assembly: DevExpress.Blazor.v25.2.dll

    NuGet Package: DevExpress.Blazor

    Declaration

    void Clear()

    Remarks

    Handle the CustomizeContextMenu event to modify context commands available in the Grid, Rich Text Editor, or TreeList component. In the event handler, call the Clear method to remove all items from the main context menu or its sub-menu.

    Grid Example

    The following code snippet displays only sorting-related commands in the header context menu:

    @inject WeatherForecastService ForecastService
    
    <DxGrid Data="@Data"
            ContextMenus="GridContextMenus.Header"
            CustomizeContextMenu="CustomizeContextMenu">
        <Columns>
            <DxGridDataColumn FieldName="Date" DisplayFormat="D" />
            <DxGridDataColumn FieldName="TemperatureC" Caption="@("Temp. (\x2103)")" Width="120px" />
            <DxGridDataColumn FieldName="TemperatureF" Caption="@("Temp. (\x2109)")" Width="120px" />
            <DxGridDataColumn FieldName="Forecast" />
            <DxGridDataColumn FieldName="CloudCover" />
        </Columns>
    </DxGrid>
    
    @code {
        object Data { get; set; }
    
        protected override void OnInitialized() {
            Data = ForecastService.GetForecast();
        }
        void CustomizeContextMenu(GridCustomizeContextMenuEventArgs args) {
            if (args.Context is GridHeaderCommandContext headerContext) {
                args.Items.Clear();
                args.Items.Add(GridContextMenuDefaultItemNames.SortColumnAscending);
                args.Items.Add(GridContextMenuDefaultItemNames.SortColumnDescending);
                args.Items.Add(GridContextMenuDefaultItemNames.ClearColumnSorting);
            }
        }
    }
    

    Rich Text Editor Example

    The following code snippet removes all items from the Text Wrap Menu:

    <DxRichEdit CustomizeContextMenu="OnCustomizeContextMenu" />
    
    @code {
        void OnCustomizeContextMenu(IContextMenuItemCollection items) {
            IContextMenuItem textWrapMenu = items[RichEditContextMenuItemNames.TextWrapMenu];
            if(textWrapMenu != null)
                textWrapMenu.Items.Clear();
        }
    }
    

    The following code snippet removes all root-level items:

    <DxRichEdit CustomizeContextMenu="OnCustomizeContextMenu" />
    
    @code {
        void OnCustomizeContextMenu(IContextMenuItemCollection items) {
            items.Clear();
        }
    }
    

    TreeList Example

    The following code sample displays only sorting-related commands in the header context menu:

    @inject EmployeeTaskService EmployeeTaskService
    
    <DxTreeList Data="TreeListData"
                KeyFieldName="Id"
                ParentKeyFieldName="ParentId"
                ContextMenus="TreeListContextMenus.Header"
                CustomizeContextMenu="CustomizeContextMenu">
        <Columns>
            <DxTreeListDataColumn FieldName="Name" Caption="Task" ShowInColumnChooser="false" />
            <DxTreeListDataColumn FieldName="EmployeeName" />
            <DxTreeListDataColumn FieldName="StartDate" />
            <DxTreeListDataColumn FieldName="DueDate" />
        </Columns>
    </DxTreeList>
    
    @code {
        List<EmployeeTask> TreeListData { get; set; }
    
        protected override void OnInitialized() {
            TreeListData = EmployeeTaskService.GenerateData();
        }
        void CustomizeContextMenu(TreeListCustomizeContextMenuEventArgs args) {
            if (args.Context is TreeListHeaderCommandContext headerContext) {
                args.Items.Clear();
                args.Items.Add(TreeListContextMenuDefaultItemNames.SortColumnAscending);
                args.Items.Add(TreeListContextMenuDefaultItemNames.SortColumnDescending);
                args.Items.Add(TreeListContextMenuDefaultItemNames.ClearColumnSorting);
            }
        }
    }
    
    See Also