DxPivotTable.SetFilterCriteria(CriteriaOperator) Method
Applies a filter to Pivot Table data.
Namespace: DevExpress.Blazor.PivotTable
Assembly: DevExpress.Blazor.PivotTable.v25.1.dll
NuGet Package: DevExpress.Blazor.PivotTable
Declaration
public void SetFilterCriteria(
CriteriaOperator criteria
)
Parameters
Name | Type | Description |
---|---|---|
criteria | CriteriaOperator | An object that specifies the filter expression. |
Remarks
The DevExpress Blazor Pivot Table component allows you to apply filters in the UI and in code.
Call the SetFilterCriteria
method to filter Pivot Table data in code. To apply a filter, create a criteria operator object that specifies the filter expression and pass this object to the SetFilterCriteria
method. When you call this method, the Pivot Table clears any applied filters. You can filter Pivot Table data by every data source field, including fields that are not displayed in the Pivot Table.
You can also use the SetFilterCriteria(stiring Criteria) method to apply filters.
Related API members:
- FilterCriteriaChanged
- Fires when filter criteria applied to Pivot Table data changes.
- GetFilterCriteria()
- Returns the filter criteria applied to Pivot Table data.
- ClearFilter()
- Clears all filter criteria applied to Pivot Table data.
The following code adds a toolbar that allows you to specify a filter for Pivot Table data (Region = “North America”) and clear the filter. The code also gets the filter criteria and displays it under the Pivot Table.
@rendermode InteractiveServer
@using Services
@using DevExpress.Data.Filtering
<DxToolbar ItemClick="@OnItemClick">
<Items>
<DxToolbarItem Name="_setFilterCriteria" Text="Set Filter Criteria" Tooltip="Set Filter Criteria" />
<DxToolbarItem Name="_clearFilterCriteria" Text="Clear Filter Criteria" Tooltip="Clear Filter Criteria" />
</Items>
</DxToolbar>
<br />
<DxPivotTable Data="SalesData" @ref="PivotTable">
<Fields>
<DxPivotTableField Field="@nameof(Sales.SaleInfo.Region)"
Area="@PivotTableArea.Row"
AreaIndex="0" />
<DxPivotTableField Field="@nameof(Sales.SaleInfo.Country)"
Area="@PivotTableArea.Row"
SortOrder="@PivotTableSortOrder.Descending"
AreaIndex="1" />
<DxPivotTableField Field="@nameof(Sales.SaleInfo.Date)"
GroupInterval="@PivotTableGroupInterval.DateYear"
Area="@PivotTableArea.Column"
AreaIndex="0"
Caption="Year" />
<DxPivotTableField Field="@nameof(Sales.SaleInfo.Date)"
GroupInterval="@PivotTableGroupInterval.DateQuarter"
Area="@PivotTableArea.Column"
AreaIndex="1"
Caption="Quarter" />
<DxPivotTableField Field="@nameof(Sales.SaleInfo.Amount)"
SortOrder="@PivotTableSortOrder.Ascending"
Area="@PivotTableArea.Data"
SummaryType="@PivotTableSummaryType.Sum" />
</Fields>
</DxPivotTable>
<p class="cw-480 mt-3">
Filter Criteria: <b>@PivotTable?.GetFilterCriteria()?.ToString()</b>
</p>
@code {
IEnumerable<Sales.SaleInfo> SalesData;
protected override async Task OnInitializedAsync() {
SalesData = await Sales.GetSalesAsync();
}
IPivotTable PivotTable { get; set; }
void OnItemClick(ToolbarItemClickEventArgs e) {
switch (e.ItemName) {
case "_setFilterCriteria":
PivotTable.SetFilterCriteria(new BinaryOperator(nameof(Sales.SaleInfo.Region), "North America", BinaryOperatorType.Equal));
break;
case "_clearFilterCriteria":
PivotTable.ClearFilter();
break;
}
}
}