DevExpress WinForms拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!
本教程将向您展示如何为整个视图或单个列启用增量搜索功能,还将了解如何执行自定义操作来响应搜索字符串更改,以及如何从代码启动或结束搜索。
获取DevExpress WinForms v25.1正式版下载
DevExpress技术交流群11:749942875 欢迎一起进群讨论
启用增量搜索功能
要启用增量搜索,请选择View,展开其GridView.OptionsBehavior属性并启用GridOptionsBehavior.AllowIncrementalSearch选项。

运行这个应用程序,看看这个特性是如何工作的。
使用增量搜索功能
首先,按产品名称搜索记录。聚焦相应的列,然后开始输入搜索文本。输入‘c’焦点移动到产品名称以该字符开头的第一行,然后输入‘h’来查找产品名称以‘ch’开头的记录,以此类推。

可能有几行包含匹配搜索条件的单元格,要使用相同的条件继续向前搜索,请按CTRL+DOWN箭头组合键。要返回,按CTRL+UP箭头,您也可以使用BACKSPACE来修改搜索字符串。
以类似的方式,您可以关注另一列,根据它的值进行搜索。
禁用单个列的增量搜索
关闭应用程序并禁用对其中一列的增量搜索,选择Category列,展开GridColumn.OptionsColumn属性,并将OptionsColumn.AllowIncrementalSearch选项设置为false。

运行应用程序并关注Category列,查看增量搜索是否不再起作用,您仍然可以在其他列中使用该特性。
响应搜索字符串的变化
您可能希望在用户搜索记录时响应搜索字符串中的更改,要做到这一点,处理视图的BaseView.KeyUp事件。在事件处理程序中,调用DisplayIncrementalSearchText方法,该方法使用View的ColumnView.GetIncrementalText 方法获取当前搜索文本,并在状态栏中显示此字符串。
C#
private void DisplayIncrementalSearchText() { si_IncrementalText.Caption = "Incremental search text: " + gridView.GetIncrementalText(); } private void gridView_KeyUp(object sender, KeyEventArgs e) { DisplayIncrementalSearchText(); }
运行应用程序来查看结果,启动增量搜索,来查看状态栏显示当前搜索字符串。

在代码中开始和停止增量搜索
还可以从代码中启动或结束增量搜索操作。Start Incremental Search和Stop Incremental Search按钮将用于此目的。在第一个按钮的Click事件处理程序中,调用View的GridView.StartIncrementalSearch方法并将‘ cha ’文本作为参数传递,使用前面讨论的DisplayIncrementalSearchText方法在状态栏中显示此文本,通过视图的ColumnView.FocusedColumn属性聚焦到产品名列。
第二个按钮的Click事件处理程序只调用GridView.StopIncrementalSearch方法。
C#
private void btn_StartIncrementalSearch_ItemClick(object sender, ItemClickEventArgs e) { gridView.StartIncrementalSearch("cha"); DisplayIncrementalSearchText(); gridView.FocusedColumn = gridView.Columns["ProductName"]; } private void btn_StopIncrementalSearch_ItemClick(object sender, ItemClickEventArgs e) { gridView.StopIncrementalSearch(); DisplayIncrementalSearchText(); }
运行应用程序。当您单击Start Incremental Search按钮时,网格将定位最近的产品名称以‘cha’开头的记录,并在状态栏中显示此文本。您可以继续输入来缩小搜索范围,Stop Incremental Search按钮禁用增强搜索模式。
更多DevExpress线上公开课、中文教程资讯请上中文网获取
关于慧都科技
慧都是⼀家⾏业数字化解决⽅案公司,专注于软件、⽯油与⼯业领域,以深⼊的业务理解和⾏业经验,帮助企业实现智能化转型与持续竞争优势。
慧都科技是DevExpress的中国区的合作伙伴,DevExpress作为用户界面领域的优秀产品,帮助企业高效构建权限管理、数据可视化(如网格/图表/仪表盘)、跨平台系统(WinForms/ASP.NET/.NET MAUI)及行业定制解决方案,加速开发并强化交互体验。
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明:文章转载自:DevExpress控件中文网 [https://www.devexpresscn.com/]
本文地址:https://www.devexpresscn.com/post/5464.html
相关产品: DevExpress WinForms Subscription, DevExpress Universal Subscription,