[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].NET Core 3 Support
 [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
    [Expand]Drop-down Filter
     Automatic Filter Row
     Filter Editor
     Filter Elements
    [Expand]Filtering in Code
     Predefined Filters
     Data Analysis Filters
     Conditional Formatting Filters
      Incremental Search
   [Expand]Data Summaries
   [Expand]Paging and Scrolling
   [Expand]Focus, Navigation, Selection
   [Expand]Conditional Formatting
   [Expand]Appearance Customization
   [Expand]MVVM Enhancements
   [Expand]Printing and Exporting
   [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]Gantt 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]eXpress Persistent Objects
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation
View this topic on docs.devexpress.com (Learn more)

Incremental Search

GridControl supports the incremental search feature.

Incremental search allows end-users to quickly locate records without using the search panel: the GridControl highlights matching values in real time as a user types search criteria.

From the end-user perspective, incremental search functions in the following manner.

  • A user focuses an element within the grid (e.g., a cell or row).
  • The user begins to type search criteria.
  • The GridControl highlights records that start with the search criteria.
  • The GridControl focuses the first record that starts with the search criteria.

An end-user can initiate incremental search if none of the grid control's cells are in edit mode.

The following animation demonstrates the incremental search feature.

A user can modify criteria in a short amount of time that is called the incremental search delay. After the delay time has elapsed, additional input is treated as new criteria.


Incremental search is case-insensitive.

The following keyboard shortcuts allow end-users to navigate search results.

Keyboard shortcut Action
Ctrl + Down Arrow Move focus to the next cell that contains a matching value.
Ctrl + Up Arrow Move focus to the previous cell that contains a matching value.
Esc End incremental search.

Limitation Incremental search is not supported in Server mode.

Expanded Incremental Search Configuration

To enable the incremental search, set the DataViewBase.IncrementalSearchMode property to Enabled.


If the detail view's DataViewBase.IncrementalSearchMode property is set to Default, the incremental search functionality will be enabled in the detail view if this functionality is enabled in the master view.

You can configure the range of columns in which the incremental search will be performed and specify a custom incremental search delay.

The following table lists API that allows you to configure the incremental search.

API Description
ColumnBase.AllowIncrementalSearch To exclude a specific column from the search, set its ColumnBase.AllowIncrementalSearch property to false.
DataViewBase.UseOnlyCurrentColumnInIncrementalSearch To search against the currently selected column only, set the DataViewBase.UseOnlyCurrentColumnInIncrementalSearch property to true.
DataViewBase.IncrementalSearchClearDelay Specifies the incremental search delay time.
DataViewBase.IncrementalSearchStart Starts the incremental search with the specified search string.

The following example demonstrates GridControl with incremental search enabled for the selected column only. The incremental search delay is set to 1 second.

Expanded Navigating Search Results Programmatically

Incremental search results can be navigated programmatically.

This may be useful if you want to create a dedicated incremental search UI as an alternative to default keyboard shortcuts.

The following table lists methods and commands that you can call to navigate search results or end the incremental search.

Metod Command Descriprion
DataViewBase.IncrementalSearchMoveNext DataViewCommandsBase.IncrementalSearchMoveNext Moves focus to the next cell that contains a matching value.
DataViewBase.IncrementalSearchMovePrev DataViewCommandsBase.IncrementalSearchMovePrev Moves focus to the previous cell that contains a matching value.
DataViewBase.IncrementalSearchEnd DataViewCommandsBase.IncrementalSearchEnd Ends the incremental search.

The following example demonstrates a dedicated toolbar that allows an end-user to navigate the incremental search results.

Expanded See Also

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