2025活动

DevExpress控件使用交流,DevExpress中国社区Dev联系电话 联系电话:023-68661681

界面控件DevExpress WinForms中文教程:Data Grid - 搜索/查找面板

来源:   发布时间:2025-09-23   浏览:54次

DevExpress WinForms拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!

DevExpress WinForms的网格控件包含一个Outlook样式的搜索面板UI,允许最终用户通过搜索所有列或特定列中的文本来轻松过滤视图。本教程将演示搜索字符串语法,然后指导您完成影响面板操作的关键设置。最后,您将学习如何在代码中调用或隐藏面板。

获取DevExpress WinForms v25.1正式版下载

DevExpress技术交流群11:749942875      欢迎一起进群讨论

搜索面板基础知识

要调用搜索面板,按快捷键CTRL+F。当最终用户在搜索框中输入时,网格会自动在所有列中搜索该文本并过滤视图。

DevExpress WinForms中文使用教程图集
搜索语法

注意

搜索语法取决于以下属性:

本教程假设生成的记录应包含查询中的任何关键字,并且记录中的单词应以关键字开头。

如果您输入两个单词,例如“new vendor”,网格将它们视为单独的条件,并选择包含“new”或“vendor”的记录。

DevExpress WinForms中文使用教程图集

要查找同时包含这两个单词的记录,请在第二个单词前键入“+”。类似地,您可以键入“-”来排除包含特定单词的记录。

DevExpress WinForms中文使用教程图集

您可以组合不同的操作符。使用“+”和“-”选择同时包含“new”和“vendor”的记录,不包括包含“history”的记录。

DevExpress WinForms中文使用教程图集

要搜索包含空格字符的字符串,需要将该字符串用引号括起来。

DevExpress WinForms中文使用教程图集

若要针对特定列进行搜索,请输入该列名称的首字母加上冒号字符。现在,网格在Status列中显示包含“new”的记录。

DevExpress WinForms中文使用教程图集

如果添加另一个特定于列的条件,网格将使用AND逻辑运算符将它们连接起来,并显示与它们都匹配的记录。当您将特定于列的条件与应用于所有列的条件连接起来时,也会发生同样的情况:结果将包含满足这两个条件的记录。

DevExpress WinForms中文使用教程图集

单击Clear显示所有记录。

搜索面板选项

默认情况下,通过关闭按钮隐藏Search Panel(搜索面板)时,搜索字符串将被清除,并显示所有记录。关闭应用程序,展开View的GridView.OptionsFind属性并禁用ColumnViewOptionsFind.ClearFindOnClose选项。

DevExpress WinForms中文使用教程图集

运行应用程序来查看结果,现在当隐藏搜索面板时,过滤条件不会被删除。

打开显示视图设置的属性网格。展开View的GridView.OptionsFind属性并禁用ColumnViewOptionsFind.AllowFindPanel选项,这将防止通过按CTRL+F快捷键调用搜索面板。将ColumnViewOptionsFind.AlwaysVisible属性设置为true,来始终显示没有关闭按钮的搜索面板,从而防止最终用户隐藏面板。

DevExpress WinForms中文使用教程图集

默认情况下,ColumnViewOptionsFind.FindFilterColumns属性设置为“*”,这就是网格搜索所有可见列的原因,将状态分配给此属性。网格将选择仅在指定列中包含搜索字符串的记录,还可以指定用分号分隔的两个或多个列。

DevExpress WinForms中文使用教程图集

ColumnViewOptionsFind.FindDelay属性指定停止输入之后和应用筛选器之前的时间间隔。

对于大型数据集,将ColumnViewOptionsFind.FindMode设置为FindMode.FindClick来防止不必要的更新是很有用的。现在当您在搜索面板中输入文本时,什么也不会发生,直到您单击查找Find或按ENTER键来强制更新。

DevExpress WinForms中文使用教程图集

您还可以禁用ColumnViewOptionsFind.HighlightFindResults选项来删除搜索结果高亮显示,还可以通过设置ColumnViewOptionsFind.FindNullPrompt属性来更改搜索框中的提示文本,ColumnViewOptionsFind.ShowClearButtonColumnViewOptionsFind.ShowFindButton选项允许您隐藏按钮。

DevExpress WinForms中文使用教程图集
显示和隐藏代码中的搜索面板

切换到设计时在代码中实现搜索面板可见性控制,在按钮的Click事件处理程序中,使用视图的ColumnView.IsFindPanelVisible属性检查搜索面板的可见性状态。如果面板现在是可见的,通过调用ColumnView.HideFindPanel方法隐藏它;否则,使用ColumnView.ShowFindPanel方法来显示它。

C#

private void btn_ShowHideFindPanel_ItemClick(object sender, ItemClickEventArgs e) {
if (gridView.IsFindPanelVisible)
gridView.HideFindPanel();
else gridView.ShowFindPanel();
}

运行应用程序。要更改Search Panel的可见性状态,请单击该按钮。


更多DevExpress线上公开课、中文教程资讯请上中文网获取

关于慧都科技

慧都是⼀家⾏业数字化解决⽅案公司,专注于软件、⽯油与⼯业领域,以深⼊的业务理解和⾏业经验,帮助企业实现智能化转型与持续竞争优势。

慧都科技是DevExpress的中国区的合作伙伴,DevExpress作为用户界面领域的优秀产品,帮助企业高效构建权限管理、数据可视化(如网格/图表/仪表盘)、跨平台系统(WinForms/ASP.NET/.NET MAUI)及行业定制解决方案,加速开发并强化交互体验。

本站文章除注明转载外,均为本站原创或翻译
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明:文章转载自:DevExpress控件中文网 [https://www.devexpresscn.com/]
本文地址:https://www.devexpresscn.com/post/5475.html

相关产品: DevExpress WinForms Subscription, DevExpress Universal Subscription,

扫码咨询
电话咨询
023-68661681
返回
顶部