DevExpress WinForms中文教程:Data Grid - 数据过滤基础知识和过滤面板设置

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

虽然有多种不同的UI选项用于数据过滤,但也有一些通用的功能。无论过滤器条件是如何应用的,都可以使用过滤器面板对其进行可视化和操作。在本文您将了解如何控制该面板的可用性并自定义其内容。

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

默认操作

DevExpress WinForms GridControl提供了多个UI元素,允许最终用户过滤数据。可以从Excel样式的列标题下拉菜单中选择一个值,或者使用Custom Filter Dialog将两个过滤条件组合成一个过滤表达式,可以使用Custom Filter Dialog构建更复杂的标准。

一旦应用了过滤器,过滤器面板就会出现在视图的底部。它显示当前应用的筛选条件,并提供额外的控件。

单击Edit Filter Button来使用Filter Editor(过滤编辑器)查看和自定义当前筛选条件。

下拉按钮允许最终用户调用最近使用过的条件列表并重新应用它们。

该复选框可用于临时禁用和启用当前过滤器,点击关闭按钮隐藏过滤器面板,清除当前过滤器。

手动更改过滤器面板可见性

刚刚经历的默认操作是,当您应用过滤器时,Filter Panel(过滤器面板)出现,当应用no条件时,Filter Panel(过滤器面板)消失。要改变这一点,关闭应用程序,展开网格的GridView.OptionsView属性,并将ColumnViewOptionsView.ShowFilterPanelMode设置为ShowFilterPanelMode.Never

运行应用程序并过滤数据,过滤器面板将不会出现。

然后,打开显示视图选项的属性网格。将ColumnViewOptionsView.ShowFilterPanelMode属性设置为ShowFilterPanelMode.ShowAlways,这样即使视图没有被过滤,也会一直显示过滤器面板。在这种模式下,关闭按钮不显示在面板内。

隐藏过滤器面板按钮

您还可以通过展开ColumnView.OptionsFilter属性并禁用ColumnViewOptionsFilter.AllowFilterEditor选项来隐藏过滤器面板的编辑过滤器按钮。

然后将ColumnViewOptionsFilter.AllowMRUFilterList属性设置为false,这将禁用允许访问最近使用的筛选条件的下拉按钮。

限制终端用户过滤器操作

还可以使用网格视图选项来控制单个列或整个视图的筛选器元素可用性。

关闭应用程序,选择Priority列并禁用其OptionsColumnFilter.AllowFilter选项,该选项可使用ColumnView.OptionsFilter属性访问。

运行应用程序,查看Priority列没有显示过滤器按钮。但是,您仍然可以根据其他列筛选数据。

为了防止终端用户对视图中的所有列进行过滤操作,请展开视图的GridView.OptionsCustomization属性并禁用GridOptionsCustomization.AllowFilter选项。


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