Skip to main content

DataFilterCollection Class

Represents a collection that stores specific filter conditions of a particular series.

Namespace: DevExpress.XtraCharts

Assembly: DevExpress.XtraCharts.v24.2.dll

Declaration

public class DataFilterCollection :
    ChartCollectionBase,
    IEnumerable<IDataFilter>,
    IEnumerable

Remarks

Each series can hold a collection of data filter objects which define the filter conditions for the series. This collection can be accessed via the SeriesBase.DataFilters property and is represented by the DataFilterCollection class. The properties and methods exposed by the DataFilterCollection class can be used to perform common collection operations such as adding or deleting items. Each item of the collection is represented by a DataFilter object. Individual collection items can be accessed using indexer notation.

Example

The following example demonstrates how to create DataFilter objects, and apply their conditions to a series at runtime. For more information, refer to Filtering Data.

For this example to work correctly, a chart should contain at least one series, which is bound to the “Categories” data table in the Northwind Traders database (nwind.mdb file shipped with the XtraCharts demo). Please refer to the following tutorial to see how to bind a series to data: How to: Bind Individual Chart Series to Data (Runtime Sample).

The code below creates and applies the following filter to series data: “CategoryID = 1 or CategoryID = 4 or CategoryID = 7”

using DevExpress.XtraCharts;
// ...

// Create new data filters and specify conditions for them.
DataFilter dataFilter1 = new DataFilter("CategoryID", "System.Int32", DataFilterCondition.Equal, 1);
DataFilter dataFilter2 = new DataFilter("CategoryID", "System.Int32", DataFilterCondition.Equal, 4);
DataFilter dataFilter3 = new DataFilter("CategoryID", "System.Int32", DataFilterCondition.Equal, 7);

// Obtain the first series of the chart.
Series series1 = chartControl1.Series[0];

// Set the logical operator used to combine individual data filter conditions for this series.
series1.DataFiltersConjunctionMode = ConjunctionTypes.Or;

// Remove all other filters.
series1.DataFilters.Clear();

// Add new filters to apply to the series data.
series1.DataFilters.AddRange(new DataFilter[] {dataFilter1, dataFilter2, dataFilter3});

Inheritance

See Also