Back to Devexpress

DataFilterCollection Class

corelibraries-devexpress-dot-xtracharts-9bbda426.md

latest4.8 KB
Original Source

DataFilterCollection Class

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

Namespace : DevExpress.XtraCharts

Assembly : DevExpress.XtraCharts.v25.2.dll

NuGet Package : DevExpress.Charts

Declaration

csharp
public class DataFilterCollection :
    ChartCollectionBase,
    IEnumerable<IDataFilter>,
    IEnumerable
vb
Public Class DataFilterCollection
    Inherits ChartCollectionBase
    Implements IEnumerable(Of 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”

csharp
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});
vb
Imports DevExpress.XtraCharts
' ...

' Create new data filters and specify conditions for them.
Dim dataFilter1 As New DataFilter("CategoryID", "System.Int32", DataFilterCondition.Equal, 1)
Dim dataFilter2 As New DataFilter("CategoryID", "System.Int32", DataFilterCondition.Equal, 4)
Dim dataFilter3 As New DataFilter("CategoryID", "System.Int32", DataFilterCondition.Equal, 7)

' Obtain the first series of the chart.
Dim series1 As Series = 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

Object CollectionBase ChartCollectionBase DataFilterCollection

See Also

DataFilterCollection Members

DataFilter

Filter Series Data

DevExpress.XtraCharts Namespace