Skip to main content
All docs
V25.2
  • DxTreeList.FilterBuilderTemplate Property

    Specifies the template for the filter builder.

    Namespace: DevExpress.Blazor

    Assembly: DevExpress.Blazor.v25.2.dll

    Declaration

    [Parameter]
    public RenderFragment<TreeListFilterBuilderTemplateContext> FilterBuilderTemplate { get; set; }

    Property Value

    Type Description
    RenderFragment<TreeListFilterBuilderTemplateContext>

    The filter builder template.

    Remarks

    The filter builder dialog is a centralized viewer/editor for TreeList component’s filter conditions. Users can edit and combine filter criteria applied to any number of columns, all within the same window. To open this dialog, users can click the current filter region in the filter panel. The ShowFilterBuilder() method opens the dialog from code.

    DevExpress Blazor TreeList - Built-in Filter Builder Dialog

    Read Tutorial: Filter Panel and Filter Builder Run Demo: Filter Builder Customization

    Specify a FilterBuilderTemplate to apply the following customizations:

    • Display custom filter fields
    • Display custom content within the filter builder dialog
    • Change settings of the integrated Filter Builder component

    Example

    The following code snippet customizes the filter builder dialog as follows:

    • Displays the applied filter condition above the Filter Builder component
    • Limits available logical operators to And and Or
    • Adds a Progress filter field
    @inject EmployeeTaskService EmployeeTaskService
    
    <DxTreeList @ref="TreeList" Data="TreeListData" KeyFieldName="Id" ParentKeyFieldName="ParentId" 
                FilterPanelDisplayMode="TreeListFilterPanelDisplayMode.Always">
        <Columns>
            <DxTreeListDataColumn FieldName="Name" Caption="Task" />
            <DxTreeListDataColumn FieldName="EmployeeName" />
            <DxTreeListDataColumn FieldName="StartDate" />
            <DxTreeListDataColumn FieldName="DueDate" />
            <DxTreeListDataColumn FieldName="Priority">
                <EditSettings>
                    <DxComboBoxSettings Data="Priorities" ValueFieldName="Value" TextFieldName="Text" />
                </EditSettings>
            </DxTreeListDataColumn>
        </Columns>
        <FilterBuilderTemplate>
            <b>Currently Applied Filter:</b> @(context.TreeList.GetFilterCriteria()?.ToString() ?? "No filter")
            <DxFilterBuilder @bind-FilterCriteria="context.FilterCriteria" 
                GroupOperatorTypes="[FilterBuilderGroupOperatorType.And, FilterBuilderGroupOperatorType.Or]">
                <Fields>
                    @context.RenderDefaultFields()
                    <DxFilterBuilderField FieldName="Status" Caption="Progress" Type="@typeof(int)">
                        <EditSettings>
                            <DxSpinEditSettings MinValue="0" MaxValue="100" />
                        </EditSettings>
                    </DxFilterBuilderField>
                </Fields>
            </DxFilterBuilder>
        </FilterBuilderTemplate>
    </DxTreeList>
    
    @code {
        ITreeList TreeList { get; set; }
        List<EmployeeTask> TreeListData { get; set; }
    
        record Priority(int Value, string Text);
        static readonly IReadOnlyList<Priority> Priorities = new Priority[] {
            new Priority(-1, "Low"),
            new Priority(0, "Medium"),
            new Priority(1, "High"),
        };
    
        protected override void OnInitialized() {
            TreeListData = EmployeeTaskService.GenerateData();
        }
    }
    

    DevExpress Blazor TreeList - Filter Builder Template

    See Also