corelibraries-devexpress-dot-export-dot-xl-7c27cf6f.md
Specifies a criterion value and comparison operator for a custom filter.
Namespace : DevExpress.Export.Xl
Assembly : DevExpress.Printing.v25.2.Core.dll
NuGet Package : DevExpress.Printing.Core
public class XlCustomFilterCriteria
Public Class XlCustomFilterCriteria
The following members return XlCustomFilterCriteria objects:
Create an instance of the XlCustomFilterCriteria class to define a filter criterion for a custom filter (XlCustomFilters). Specify a filter value (XlCustomFilterCriteria.Value) and a comparison operator (XlCustomFilterCriteria.FilterOperator).
Pass the created XlCustomFilterCriteria object to the XlCustomFilters constructor as a parameter to create the filter expression. If you create a complex filter expression containing two filter criteria, specify what logical operator (“AND” or “OR”) should be used to combine these criteria (XlCustomFilters.And).
Refer to the Filtering article to learn more about filtering in the Excel Export Library.
Note
A complete sample project is available at https://github.com/DevExpress-Examples/excel-export-api-examples
// Generate the header row.
using (IXlRow row = sheet.CreateRow())
row.BulkCells(new string[] { "Region", "Product", "Sales" }, headerRowFormatting);
// Create a custom filter to display values in the "Sales" column that are greater than $4500.
XlCustomFilters filter = new XlCustomFilters(new XlCustomFilterCriteria(XlFilterOperator.GreaterThanOrEqual, 4500));
sheet.AutoFilterColumns.Add(new XlFilterColumn(2, filter));
// Start filtering data.
sheet.BeginFiltering(sheet.DataRange);
// Generate data for the document.
string[] products = new string[] { "Camembert Pierrot", "Gorgonzola Telino", "Mascarpone Fabioli", "Mozzarella di Giovanni" };
int[] amount = new int[] { 6750, 4500, 3550, 4250, 5500, 6250, 5325, 4235 };
for (int i = 0; i < 8; i++)
{
using (IXlRow row = sheet.CreateRow())
{
using (IXlCell cell = row.CreateCell())
{
cell.Value = (i < 4) ? "East" : "West";
cell.ApplyFormatting(rowFormatting);
}
using (IXlCell cell = row.CreateCell())
{
cell.Value = products[i % 4];
cell.ApplyFormatting(rowFormatting);
}
using (IXlCell cell = row.CreateCell())
{
cell.Value = amount[i];
cell.ApplyFormatting(rowFormatting);
}
}
}
// Finish filtering.
sheet.EndFiltering();
' Generate the header row.
Using row As IXlRow = sheet.CreateRow()
row.BulkCells(New String() { "Region", "Product", "Sales" }, headerRowFormatting)
End Using
' Create a custom filter to display values in the "Sales" column that are greater than $4500.
Dim filter As New XlCustomFilters(New XlCustomFilterCriteria(XlFilterOperator.GreaterThanOrEqual, 4500))
sheet.AutoFilterColumns.Add(New XlFilterColumn(2, filter))
' Start filtering data.
sheet.BeginFiltering(sheet.DataRange)
' Generate data for the document.
Dim products() As String = { "Camembert Pierrot", "Gorgonzola Telino", "Mascarpone Fabioli", "Mozzarella di Giovanni" }
Dim amount() As Integer = { 6750, 4500, 3550, 4250, 5500, 6250, 5325, 4235 }
For i As Integer = 0 To 7
Using row As IXlRow = sheet.CreateRow()
Using cell As IXlCell = row.CreateCell()
cell.Value = If(i < 4, "East", "West")
cell.ApplyFormatting(rowFormatting)
End Using
Using cell As IXlCell = row.CreateCell()
cell.Value = products(i Mod 4)
cell.ApplyFormatting(rowFormatting)
End Using
Using cell As IXlCell = row.CreateCell()
cell.Value = amount(i)
cell.ApplyFormatting(rowFormatting)
End Using
End Using
Next i
' Finish filtering.
sheet.EndFiltering()
Object XlCustomFilterCriteria
See Also
XlCustomFilterCriteria Members