Filter and Search 筛选和搜索

Goto Data Grid 数据网格

Filter and Search 筛选和搜索

Filter Drop-down Menus (Excel-style) 筛选器下拉菜单(Excel 样式)

要调用列的筛选器下拉菜单,请单击列标题中的筛选器图标。在 “Values” 选项卡中,用户可以从 Data Grid 显示的单元格值中选择特定的单元格值。

在这里插入图片描述
“过滤器”选项卡为用户提供了更广泛的过滤器选项池。例如,当用户按日期筛选数据时,您可以仅显示与上周对应的记录。

在这里插入图片描述
过滤器下拉菜单的内容取决于相关网格列显示的数据类型。例如,下图说明了当数据按数字列筛选时,此菜单的外观。

在这里插入图片描述
这种类型的过滤器下拉菜单称为 “Excel-style”,是 v17.1 及更高版本中的默认过滤器菜单类型。

Related API 相关 API

  • GridOptionsCustomization.AllowFilter — 禁用整个数据网格的数据筛选功能。
  • OptionsColumnFilter.AllowFilter — 禁用特定列的筛选功能。
  • ColumnView.ColumnFilterChanged — 当列的筛选条件更改时发生。当 Find Panel 完成搜索时,也会引发此事件。
  • ColumnViewOptionsFilter.ColumnFilterPopupMode — 如果您的 DevExpress 安装版本低于 v17.1,请将此设置切换到 Excel 以启用 Excel 样式的筛选器下拉菜单。
  • ColumnView.OptionsFilter — 提供对影响所有列的筛选器菜单的设置的访问。有关可用设置的列表,请参阅 ColumnViewOptionsFilter 类成员。
  • GridColumn.OptionsFilter — 提供对特定列的筛选设置的访问。有关可用设置的列表,请参阅 OptionsColumnFilter 类成员。
  • ColumnView.ShowFilterPopupExcel — 处理此事件以自定义 Excel 样式的筛选器。

请参阅以下主题以了解如何动态自定义 Excel 样式的菜单:高级筛选器和搜索概念。

Classic Filter Drop-down Menus 下拉菜单

数据网格可以显示经典的筛选器菜单,而不是 Excel 样式的下拉菜单。经典筛选器菜单包括 DateTime 列的日历和其他类型列的常规下拉菜单。

在这里插入图片描述

Related API: 相关 API:

  • ColumnViewOptionsFilter.ColumnFilterPopupMode — 将此属性设置为 Classic 以在 v17.1 及更高版本中启用经典筛选器下拉菜单。经典菜单已在旧版本中启用。
  • WindowsFormsSettings.DefaultSettingsCompatibilityMode — 允许您启用经典筛选器下拉菜单的替代属性。要启用经典筛选器菜单,请将此属性设置为 v16。
  • ColumnViewOptionsFilter.ColumnFilterPopupRowCount — 获取或设置常规下拉菜单可以同时显示的最大项数。
  • ColumnViewOptionsFilter.AllowColumnMRUFilterList — 如果启用此属性,则常规下拉列表会记住用户最近选择的值。这些值显示在默认的 “Custom” 项之前。
  • OptionsColumnFilter.ShowBlanksFilterItems — 获取或设置“(Blanks)”和“(Non Blanks)”项在筛选器下拉菜单中是否可用。
  • ColumnView.ColumnFilterChanged - 当列的筛选条件发生更改时发生。当 Find Panel 完成搜索时,也会引发此事件。

您还可以使用检查列表菜单而不是常规下拉菜单。

在这里插入图片描述

Related API: 相关 API:

  • OptionsColumnFilter.FilterPopupMode — 将属性设置为 CheckedList 以启用此筛选器菜单样式。

  • ColumnViewOptionsFilter.ShowAllTableValuesInCheckedFilterPopup — 获取或设置选中的筛选器下拉列表是显示所有数据源记录中的唯一值,还是仅显示满足当前筛选条件的记录中的唯一值。

  • ColumnView.ShowFilterPopupCheckedListBox — 此事件允许您修改检查列表筛选器菜单中的项目,包括标准的“全选”项目。

您还可以将日历筛选器菜单替换为选中列表。此外,您还可以在三种类型的基于日历的菜单之间进行选择:DateSmart(默认菜单类型)、DateAlt 和 Date。下图说明了 DateAlt 菜单。

在这里插入图片描述

所有这些菜单都包含相同的日历,该日历选择特定日期,但具有不同的日期间隔集。下表列出了其中的几个间隔。

Related API: 相关 API:

  • OptionsColumnFilter.FilterPopupMode — 将此属性设置为 Date、DateSmart 或 DateAlt 以选择所需的基于日历的下拉菜单。

  • OptionsColumnFilter.ImmediateUpdatePopupDateFilterOnCheck — 如果启用此设置,则在用户切换基于日历的菜单复选框后立即应用筛选器。

  • OptionsColumnFilter.ImmediateUpdatePopupDateFilterOnDateChange — 如果启用此设置,则在用户在基于日历的菜单中选择日期(或日期范围)后,将立即应用筛选器。

  • OptionsColumnFilter.ShowEmptyDateFilter — 获取或设置下拉菜单是否显示“Show Empty”筛选器。用户可以检查此筛选器以查看在相应的 DateTime 列中没有值的记录。

Automatic Filter Row 自动筛选行

在运行时筛选数据的另一种方法是使用 Automatic Filter Row。此行显示在常规数据行的上方,允许用户键入筛选条件值(包括“*”和“%”通配符)并选择筛选条件运算符(NotLike、Equals、Between 等)。

在这里插入图片描述
请注意,显示在 Automatic Filter Row 中的单元格编辑器会忽略其掩码,并允许用户输入任何字符。

请注意,如果 Auto Filter Row 单元格使用 RepositoryItemRichTextEdit 就地编辑器,则用户只能为此单元格选择“Like”筛选条件。其他条件(“开头为”、“等于”等)不适用于 RTF 值。

Related API: 相关 API:

  • GridOptionsView.ShowAutoFilterRow — 管理 Automatic Filter Row 的可见性。
  • OptionsColumnFilter.AllowAutoFilter — 允许您从 Automatic Filter Row (自动筛选行) 中排除特定列,而不隐藏整行。
  • GridView.PopupMenuShowing — 允许您隐藏或删除特定条件。
  • GridOptionsFilter.AllowAutoFilterConditionChange — 指定自动筛选行的条件选择器是否可见。如果禁用此选择器,则将使用以下运算符比较输入的值:“等于”(用于 CheckEdit、LookUpEdit 和 ImageComboBoxEdit 列)或“喜欢”(用于其他列)。
  • OptionsColumnFilter.AutoFilterCondition — 指定此列的筛选条件运算符(“Equals”、“Like”、“Greater”等)。
  • OptionsColumnFilter.ImmediateUpdateAutoFilter — 如果启用此设置,则数据网格将在用户修改筛选条件后立即筛选其记录。否则,在用户按 Enter 键或将焦点移动到另一个单元格之前,不会应用筛选器。
  • GridView.ShowAutoFilterConditionsMenu — 从代码中调用此方法以调用特定列的 Automatic Filter Row 弹出菜单。
  • GridView.GetAutoFilterValue、GridView.SetAutoFilterValue — 允许您检索当前应用的自动筛选行条件并从代码中应用新条件的方法。

Filter Panel Filter 面板

应用过滤器时,View (视图) 将显示一个过滤器面板。用户可以使用此面板来修改和删除当前过滤器。

在这里插入图片描述

Related API: 相关 API:

  • ColumnViewOptionsView.ShowFilterPanelMode — 管理筛选器面板的可见性。
  • ColumnView.ActiveFilterEnabled — 允许您打开或关闭当前筛选器。
  • ColumnViewOptionsFilter.AllowMRUFilterList — 允许您隐藏使用最近应用的筛选器调用列表的按钮。
  • ColumnViewOptionsFilter.AllowFilterEditor — 控制“编辑筛选器”按钮的可见性。

Incremental Search 增量搜索

用户可以聚焦网格列并开始键入。Data Grid 聚焦并突出显示第一个匹配记录。要查找其他记录,请按 Ctrl+Up 和 Ctrl+Down 热键。
在这里插入图片描述

  • GridOptionsBehavior.AllowIncrementalSearch — 启用或禁用增量搜索。
  • ColumnView.GetIncrementalText — 返回在增量搜索期间搜索的文本。
  • GridView.StartIncrementalSearch、GridView.StopIncrementalSearch — 从代码中调用这些方法以手动触发和取消增量搜索。

Filter Editor 过滤器编辑器

Filter Editor 对话框允许用户构建复杂的筛选条件,这些条件由多个表达式组合而成。要调用此对话框,用户可以执行以下操作之一:

  • 单击 Filter 面板中的 “Edit Filter”。
  • 在常规的下拉过滤器菜单中选择“(自定义)”。
  • 右键单击列标题并选择 “Filter Editor”。

在这里插入图片描述
您可以修改 ColumnViewOptionsFilter.DefaultFilterEditorView 属性,以启用筛选器编辑器的“文本”面板/选项卡,用户可以在其中手动键入筛选器表达式。
在这里插入图片描述

Related API: 相关 API:

  • ColumnViewOptionsFilter.AllowFilterEditor — 获取或设置筛选器编辑器是否可用。
  • ColumnView.CustomFilterDialog — 处理此事件以更改用户单击“自定义”筛选器下拉菜单项时的默认行为。请参阅以下主题以了解更多信息:高级筛选和搜索概念。
  • ColumnView.FilterEditorCreated — 当 Filter Editor 即将显示时,将触发此事件。该事件允许您自定义 Editor 对话框或阻止其显示。
  • ColumnViewOptionsFilter.UseNewCustomFilterDialog — 启用此属性后,用户不仅可以根据常量自定义值筛选 GridColumn 的值,还可以根据其他 GridColumn 的值进行筛选。
  • ColumnViewOptionsFilter.FilterEditorAggregateEditing — 此属性指定用户是否可以基于集合属性创建筛选器。

以下代码片段允许用户使用 SpinEdit 和 CalcEdit 编辑器筛选 “Price” 列数据。

在这里插入图片描述

private void GridView1_FilterEditorCreated(object sender, DevExpress.XtraGrid.Views.Base.FilterControlEventArgs e) {e.FilterControl.BeforeShowValueEditor += FilterControl_BeforeShowValueEditor;
}
RepositoryItemSpinEdit reSpinEdit = new RepositoryItemSpinEdit();
RepositoryItemCalcEdit reCalcEdit = new RepositoryItemCalcEdit();
private void FilterControl_BeforeShowValueEditor(object sender, DevExpress.XtraEditors.Filtering.ShowValueEditorEventArgs e) {if (e.CurrentNode.FirstOperand.PropertyName != "Price") return;RepositoryItemTextEdit item = null;if (e.FocusedElementIndex == 2)item = reSpinEdit;elseitem = reCalcEdit;item.Mask.MaskType = DevExpress.XtraEditors.Mask.MaskType.Numeric;item.Mask.EditMask = "c";e.CustomRepositoryItem = item;
}

Find Panel “查找”面板

“查找面板”允许用户应用临时筛选器,以一次筛选所有数据网格列中的数据。要调用此面板,请在运行时按 “Ctrl+F”。键入您需要搜索的文本,然后按 Enter 或单击“查找”。
在这里插入图片描述
请注意,“查找”面板不会突出显示包含 HTML 文本的单元格。

  • ColumnViewOptionsFind.AllowFindPanel — 管理“查找”面板的可用性。
  • ColumnViewOptionsFind.Behavior — 获取或设置是否隐藏与查询不匹配的记录。
  • ColumnViewOptionsFind.ParserKind — 如果输入到“查找”面板中的文本包含空格,则面板会将此字符串拆分为单独的逻辑块。ParserKind 设置指定如何将这些块组合到搜索查询中。
  • ColumnViewOptionsFind.Condition — 获取或设置数据网格搜索输入到“查找面板”中的字符串所依据的条件。
  • ColumnViewOptionsFind.FindMode — 获取或设置用户是必须按 Enter 还是单击“查找”按钮才能开始搜索,还是在一定延迟后自动启动(ColumnViewOptionsFind.FindDelay 属性)。
  • ColumnViewOptionsFind.AllowFindInExpandedDetails — 获取或设置是否在展开的详细信息视图中搜索数据。

Search in Column Headers 在列标题中搜索

您可以使用 GridView.OptionsFilter.InHeaderSearchMode 属性在 View 的列标题中启用内置搜索框。搜索框用于筛选列数据或按列搜索,具体取决于您选择的模式。

  • ‘TextFilter’ Mode ‘TextFilter’ 模式
    用户可以在搜索框中键入文本以筛选列。
  • ‘TextSearch’ Mode “TextSearch” 模式
    用户可以在搜索框中键入文本来搜索列数据。网格将突出显示与指定搜索字符串匹配的单元格文本。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/12476.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

java项目报错:错误提示Could not initialize class com.jacob.com.ComThread

java项目报错:错误提示Could not initialize class com.jacob.com.ComThread 下载地址: 通过网盘分享的文件:jacob-1.19 链接: https://pan.baidu.com/s/1ouudh7A2-Y2kqPh_q-WYiA?pwdqhr3 提取码: qhr3 –来自百度网盘超级会员v7的分享 安…

Linux服务管理-多路径multipath

多路径Multipath 概述 多路径(Multipath)技术,特别是在存储系统中,是一种提高可靠性和性能的重要手段。多路径技术允许服务器通过多条物理路径连接到存储设备。这些路径可以是包含独立电缆、交换机和控制器的物理SAN连接。 多路…

省级绿色金融指数数据(1990-2021年)

绿色信贷是指银行在信贷业务中采纳环境标准,对污染企业的资金进行限制,同时对环保企业给予扶持。这种模式旨在促使贷款企业承担环境责任,实现节能减排,优化产业结构,以及改变经济增长方式。 1990-2021年省级绿色金融指…

【go从零单排】通道select、通道timeout、Non-Blocking Channel Operations非阻塞通道操作

🌈Don’t worry , just coding! 内耗与overthinking只会削弱你的精力,虚度你的光阴,每天迈出一小步,回头时发现已经走了很远。 📗概念 select 语句是 Go 的一种控制结构,用于等待多个通道操作。它类似于 s…

Unity资源打包Addressable AA包

从零到一 很多资料都是通过一步步设置讲解的,有时很想先快速实现,再了解细节。 下面就是远程加载Cube.prefab然后实例化简单的代码。 代码中可以不需要远程的网址,不需要资源下载的位置,不需要判断是否已经下载到本地。 那是如…

Microsoft Visual C++ 安装失败 0x80070666

“0x80070666”错误通常在尝试安装 Microsoft Visual C、Lumberyard 或类似的分发包时发生。该错误信息通常在安装过程的开始阶段就被报告。此问题并非特定于某一Windows版本,已经确认在Windows 7、Windows 8.1和Windows 10中均会发生。 0x80070666 错误在安装 Micr…

netcat工具安装和使用

netcat是一个功能强大的网络实用工具,可以从命令⾏跨⽹络读取和写⼊数据。 netcat是为Nmap项⽬编写的,是⽬前分散的Netcat版本系列的经典。 它旨在成为可靠的后端⼯具,可⽴即为其他应⽤程序和⽤户提供⽹络连接。 一,下载安装 1&a…

带隙基准学习笔记一

1.带隙基准原理: 带隙基准电压源采用BJT,利用其基极-发射极电压的负温度系数和两个不同的BJT基极-发射极电压之差的正温度系数用于获得温度系数为零的基准电压源,因为最终计算的输出电压接近硅晶体的一个带隙电压,所以被称为带隙…

使用 Node.js 了解 MVC 模式

模型-视图-控制器 (MVC) 模式是 Web 开发中最流行的架构模式之一。通过将应用程序划分为三个相互关联的组件(模型、视图和控制器),MVC 促进了有组织、可维护和可扩展的代码。Node.js 具有异步处理和庞大的生态系统&…

35.3K+ Star!PhotoPrism:一款基于AI的开源照片管理工具

PhotoPrism 简介 PhotoPrism[1] 是一个为去中心化网络设计的AI照片应用,它利用最新技术自动标记和查找图片,实现自动图像分类与本地化部署,你可以在家中、私有服务器或云端运行它。 项目特点 主要特点 浏览所有照片和视频,无需担心RAW转换、重复项或视频格式。 使用强大的…

VMware虚拟机安装Win7专业版保姆级教程(附镜像包)

一、Win7镜像下载: 链接:https://pan.baidu.com/s/1tvN9hXCVngUzpIC6b2OGrA 提取码:a66H 此镜像为Win7专业版(收藏级镜像 已自用几年),官方纯净系统没有附带任何其他第三方软件。 二、配置虚拟机 1.创建新的虚拟机。 这里我们以最新的VMware…

中国前首富胡志标受邀出席创客匠人“全球创始人IP领袖高峰论坛”

创客匠人正式官宣!原爱多VCD创始人、中国前首富胡志标受邀出席创客匠人5000人“全球创始人IP领袖高峰论坛”,将与我们携手共赴这场商业巅峰盛宴。 由创客匠人打造的“全球创始人IP领袖高峰论坛”将在2024年12月26日-28日在厦门市国际博览会议中心如期举…

TCP可靠连接的建立和释放,TCP报文段的格式,UDP简单介绍

TCP连接的建立(三次握手) 建立连接使用的三报文 SYN 报文仅用于 TCP 三次握手中的第一个和第二个报文(SYN 和 SYN-ACK),用于初始化连接的序列号。数据传输阶段不再使用 SYN 标志。 SYN 报文通常只携带连接请求信息&a…

flink 同步oracle11g数据表到pg库

1. 关闭防火墙和selinux systemctl stop firewalld systemctl disable firewalld systemctl status firewalldvi /etc/selinux/config 修改为disabled2.安装java8 yum list java-1.8* yum install java-1.8.0-openjdk* -yjava -version3.下载和部署postgresql 看需求安装pg库…

012_SSH_Mysql网上订餐系统(论文+程序)_lwplus87

摘 要 本文讲述了基于JSP技术构建的网上订餐系统的设计与实现。所谓的网上订餐系统是通过网站推广互联企业的商品和技术服务,并使客户随时可以了解企业和企业的产品,为客户提供在线服务和订单处理功能。 从长期的战略目标来说,网站不仅是…

ASR 点亮闪光灯和后摄对焦马达

ASR翱捷科技 ASR kernel 5.10 android14 ASR EVB平台 ASR 原理图 闪光灯是gpio控制 1.驱动 路径:asr\kernel\linux\drivers\media\platform\asr-mars11\flash\leds-gpio-flash.c 驱动加载后生成设备节点/sys/class/leds/torch 和/sys/class/leds/flash。 Makefile Kconfig…

Linux中线程的基本概念与线程控制

Linux操作系统中线程 1、进程指的是加载进内存的程序,进程 内核数据结构 进程代码和数据 2、进程在执行ABCD四个函数时是一个单执行流,而如果想让AB函数和CD函数并发执行,我们通常会创建一个子进程,但这意味着需要创建新的进程…

初级数据结构——单向链表

前言 单向链表示最基础的数据结构之一,它也是我们学习开始学习数据结构的第一个必须要掌握的数据结构,学习数据结构一定是由浅到深,所以我们最好是先学习简单的在学习有难度的,因为直接学习难的数据结构很容易劝退,让…

RTMP推流H264和AAC

使用 librtmp 库实现推流h264和aac文件,rtmp服务器使用SRS搭建,拉流端使用VLC。其中用到的h264和aac文件解析部分代码在我其它博客中有写:C/C AAC文件解析-CSDN博客、C/C H264文件解析-CSDN博客。 推流部分源码(C)如下…

中国药品注册审批数据库- 药品注册信息查询与审评进度查询方法

药品的注册、审评审批进度信息是医药研发相关人员每天都会关注的信息,为了保证药品注册申请受理及审评审批进度信息的公开透明,CDE药审中心提供药品不同注册分类序列及药品注册申请受理的审评审批进度信息查询服务。但因CDE官网的改版导致很大一部分人不…