[Expand]General Information
[Expand]WinForms Controls
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Collapse]WPF Controls
 [Expand]What's Installed
 [Expand]Common Concepts
 [Expand]MVVM Framework
 [Collapse]Controls and Libraries
  [Collapse]Data Grid
   [Expand]Getting Started
   [Expand]Implementation Details
   [Expand]Grid View Data Layout
   [Expand]Binding to Data
   [Expand]Master-Detail Data Representation
   [Expand]Data Editing and Validation
   [Collapse]Filtering and Searching
     Filtering Overview
     Automatic Filter Row
     Filter Dropdown
     Filter Editor
     Filtering in Code
     Filter Expressions
     Allowed Filters
     Filter Modes and Custom Filtering
     Filtering Nodes
     Search Panel
     Incremental Search
   [Expand]Data Summaries
   [Expand]Paging and Scrolling
   [Expand]Focus and Navigation
   [Expand]Conditional Formatting
   [Expand]Appearance Customization
   [Expand]MVVM Enhancements
   [Expand]Printing and Exporting
   [Expand]End-User Interaction
   [Expand]Performance Improvement
   [Expand]Design-Time Features
   [Expand]Visual Elements
   [Expand]End-User Capabilities
  [Expand]Ribbon, Bars and Menu
  [Expand]Charts Suite
  [Expand]Pivot Grid
  [Expand]Rich Text Editor
  [Expand]Tree List
  [Expand]Gauge Controls
  [Expand]Map Control
  [Expand]Layout Management
  [Expand]Windows Modern UI
  [Expand]Data Editors
  [Expand]Navigation Controls
  [Expand]Spell Checker
  [Expand]Property Grid
  [Expand]PDF Viewer
  [Expand]TreeMap Control
  [Expand]Diagram Control
  [Expand]Windows and Utility Controls
   Dialogs, Notifications and Panels
  [Expand]Scheduler (legacy)
 [Expand]Scaffolding Wizard
  Redistribution and Deployment
  Get More Help
 [Expand]API Reference
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Report and Dashboard Server
[Expand]eXpressApp Framework
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation

Filtering Overview

Expanded Overview

Filtering allows you to display a subset of records in the data source that meet the desired criteria. When filtering is applied, only data rows that meet the specified criteria are displayed. Data can be filtered against a single column, or multiple columns. End-users can build simple filter criteria and apply them, using the Automatic Filter Row or a column's filter dropdown.

Applying filtering to a column does not affect the filter settings of any other column. Column filters are combined by the AND operator into a single filter expression which is applied to the grid. The filter string can be considered to be the WHERE clause of an SQL SELECT statement.

By default, the Filter Panel is automatically shown at the bottom of the View, after a filter has been applied. Removing the filter hides this panel. The filter panel displays a string which represents the current filter criteria, and contains buttons to disable/enable and clear the filter. To make this panel always visible or always hidden, use the DataViewBase.ShowFilterPanelMode property.

The text displayed within the Filter Panel, is returned by the DataViewBase.FilterPanelText property. To provide your own text that describes the grid's filter, handle the DataViewBase.CustomFilterDisplayText event.

Expanded Availability

End-users can filter data using the Automatic Filter Row or via a column's Filter Dropdown. By default, the Automatic Filter Row is hidden. To show it, set the TableView.ShowAutoFilterRow property to true.

The availability of the filter dropdowns is controlled by a view's DataViewBase.AllowColumnFiltering option. Individual columns provide the ColumnBase.AllowColumnFiltering property that allows the default behavior, specified by a View, to be overridden. For instance, you can prevent end-users from invoking the filter dropdowns of individual columns. When filtering by a column is disabled, its filter button is never displayed.

Note that these settings do not affect filtering via code.

Expanded Concepts

Expanded Examples

Is this topic helpful?​​​​​​​