Skip to main content
All docs
V24.2

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

DxDropDownBox.DropDownHeaderTemplate Property

Specifies a template for the drop-down window’s header.

Namespace: DevExpress.Blazor

Assembly: DevExpress.Blazor.v24.2.dll

NuGet Package: DevExpress.Blazor

#Declaration

#Property Value

Type Description
RenderFragment<DropDownBoxTemplateContext>

The header template.

#Remarks

The drop-down window can include a header, body, and footer. Use the DropDownHeaderTemplate property to specify the content for the window’s header element.

DropDownHeaderTemplate has the context parameter. You can use the parameter’s DropDownBox property to get information about the processed editor.

@inject NwindDataService NwindDataService

<DxDropDownBox @bind-Value="Value"
                QueryDisplayText="QueryText"
                CssClass="ddBox">
    <DropDownHeaderTemplate>
        <span class="oi oi-person" />
        Select Employees:
    </DropDownHeaderTemplate>
    <DropDownBodyTemplate>
        <DxListBox @ref="listBox" 
                    Data="@ListBoxData" TData="Employee" TValue="Employee"
                    Values="@(GetListBoxValues(context.DropDownBox))"
                    TextFieldName="@nameof(Employee.Text)"
                    SelectionMode="ListBoxSelectionMode.Multiple"
                    ShowCheckboxes="true"
                    CssClass="templateListbox"/>
    </DropDownBodyTemplate>
    <DropDownFooterTemplate>
        <DxButton Text="OK" CssClass="btn-margin"
                  Click="@(() => SetDropDownBoxValue(context.DropDownBox))" />
        <DxButton Text="Cancel" RenderStyle="ButtonRenderStyle.Secondary"
                  Click="@(() => context.DropDownBox.HideDropDown())" />
    </DropDownFooterTemplate>
</DxDropDownBox>

@code {
    DxListBox<Employee, Employee> listBox;
    IEnumerable<Employee> ListBoxData { get; set; }
    object Value { get; set; }

    string QueryText(DropDownBoxQueryDisplayTextContext arg) {
        var names = (arg.Value as IEnumerable<Employee>)?.Select(x => x.LastName);
        return names != null ? string.Join(",", names) : string.Empty;
    }

    IEnumerable<Employee> GetListBoxValues(IDropDownBox dropDownBox) {
        return dropDownBox.Value as IEnumerable<Employee>;
    }

    void SetDropDownBoxValue(IDropDownBox dropDownBox) {
        dropDownBox.BeginUpdate();
        dropDownBox.Value = listBox.Values;
        dropDownBox.HideDropDown();
        dropDownBox.EndUpdate();
    }

    protected override async Task OnInitializedAsync() {
        ListBoxData = await NwindDataService.GetEmployeesAsync();
        Value = ListBoxData.Take(2);
    }
}

Templated Drop-Down Window

See Also