blazor-devexpress-dot-blazor-dot-dxgriddatacolumn-e4568acf.md
Specifies whether grid data is filtered by value or display text.
Namespace : DevExpress.Blazor
Assembly : DevExpress.Blazor.v25.2.dll
NuGet Package : DevExpress.Blazor
[DefaultValue(GridColumnFilterMode.Value)]
[Parameter]
public GridColumnFilterMode FilterMode { get; set; }
| Type | Default | Description |
|---|---|---|
| GridColumnFilterMode | Value |
The filter mode.
|
Available values:
| Name | Description |
|---|---|
| Value |
Filters data by value.
| | DisplayText |
Filters data by display text.
|
The FilterMode property specifies whether grid data is filtered by value or display text.
When the FilterMode property is set to Value, the grid filters rows by cell values.
<DxGrid Data="@Data" CustomizeCellDisplayText="Grid_CustomizeCellDisplayText"
ShowFilterRow="true" PageSize="7">
<Columns>
<DxGridDataColumn FieldName="Date" DisplayFormat="D" />
<DxGridDataColumn FieldName="CloudCover" />
<DxGridDataColumn FieldName="TemperatureC" TextAlignment="GridTextAlignment.Left" Caption="Forecast"
FilterMode="GridColumnFilterMode.Value" />
</Columns>
</DxGrid>
void Grid_CustomizeCellDisplayText(GridCustomizeCellDisplayTextEventArgs e) {
if(e.FieldName == "TemperatureC") {
int val = Convert.ToInt32(e.Value);
if(val < 15)
e.DisplayText = "Cold";
else if(val < 25)
e.DisplayText = "Warm";
else
e.DisplayText = "Hot";
}
}
When the FilterMode property is set to DisplayText, the grid filters rows by display text. This scenario can be useful when you specify custom display text for cells (see the DisplayFormat property and CustomizeCellDisplayText event descriptions).
<DxGrid Data="@Data" CustomizeCellDisplayText="Grid_CustomizeCellDisplayText"
ShowFilterRow="true" PageSize="7">
<Columns>
<DxGridDataColumn FieldName="Date" DisplayFormat="D"
FilterMode="GridColumnFilterMode.DisplayText" />
<DxGridDataColumn FieldName="CloudCover" />
<DxGridDataColumn FieldName="TemperatureC" TextAlignment="GridTextAlignment.Left" Caption="Forecast"
FilterMode="GridColumnFilterMode.DisplayText" />
</Columns>
</DxGrid>
void Grid_CustomizeCellDisplayText(GridCustomizeCellDisplayTextEventArgs e) {
if(e.FieldName == "TemperatureC") {
int val = Convert.ToInt32(e.Value);
if(val < 15)
e.DisplayText = "Cold";
else if(val < 25)
e.DisplayText = "Warm";
else
e.DisplayText = "Hot";
}
}
For additional information about filter row, see the following topic: Filter Row in Blazor Grid.
The Grid does not support filtering by display text in the following cases:
See Also