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” 模式
用户可以在搜索框中键入文本来搜索列数据。网格将突出显示与指定搜索字符串匹配的单元格文本。
相关文章:
Filter and Search 筛选和搜索
Goto Data Grid 数据网格 Filter and Search 筛选和搜索 Filter Drop-down Menus (Excel-style) 筛选器下拉菜单(Excel 样式) 要调用列的筛选器下拉菜单,请单击列标题中的筛选器图标。在 “Values” 选项卡中,用户可以从 Data …...
spark的学习-06
SparkSQL读写数据的方式 1)输入Source 方式一:给定读取数据源的类型和地址 spark.read.format("json").load(path) spark.read.format("csv").load(path) spark.read.format("parquet").load(path) 方式二:…...
Linux C/C++ Socket 编程
本文目录 Linux C语言 socket 编程 client 端头文件 unistd.h & arpa/inet.h1. **unistd.h**2. **arpa/inet.h** socket() 创建套接字sockaddr_in 结构体inet_pton()connect()send()recv()send() 和 recv() 中的 flags 参数**默认行为(flags 0)的特…...
Flutter错误: uses-sdk:minSdkVersion 16 cannot be smaller than version 21 declared
前言 今天要做蓝牙通信的功能,我使用了flutter_reactive_ble这个库,但是在运行的时候发现一下错误 Launching lib/main.dart on AQM AL10 in debug mode... /Users/macbook/Desktop/test/flutter/my_app/android/app/src/debug/AndroidManifest.xml Err…...
Spark 的容错机制:保障数据处理的稳定性与高效性
Spark 的介绍与搭建:从理论到实践_spark环境搭建-CSDN博客 Spark 的Standalone集群环境安装与测试-CSDN博客 PySpark 本地开发环境搭建与实践-CSDN博客 Spark 程序开发与提交:本地与集群模式全解析-CSDN博客 Spark on YARN:Spark集群模式…...
TCP可靠连接的建立和释放,TCP报文段的格式,UDP简单介绍
TCP连接的建立(三次握手) 建立连接使用的三报文 SYN 报文仅用于 TCP 三次握手中的第一个和第二个报文(SYN 和 SYN-ACK),用于初始化连接的序列号。数据传输阶段不再使用 SYN 标志。 SYN 报文通常只携带连接请求信息&a…...
LLMs之PDF:zeroX(一款PDF到Markdown 的视觉模型转换工具)的简介、安装和使用方法、案例应用之详细攻略
LLMs之PDF:zeroX(一款PDF到Markdown 的视觉模型转换工具)的简介、安装和使用方法、案例应用之详细攻略 目录 zeroX的简介 1、支持的文件类型 zeroX的安装和使用方法 T1、Node.js 版本: 安装 使用方法 使用文件 URL: 使用本地路径&…...
开源数据库 - mysql - mysql-server-8.4(gtid主主同步+ keepalived热切换)部署方案
前置条件 假设主从信息 mysqlhostport主192.168.1.13306从192.168.1.23306vip192.168.1.3 部署流程 导出测试环境表结构与数据 使用mysqldump ./mysqldump -ulzzc -p -S /tmp/mysql3306.sock --single-transaction --database lzzc > databaseLZZCxxxx.sql查看gtid号 …...
Java全栈体系路线
Java全栈体系路线 摘要 Java 是一门广泛应用于企业级开发的语言,具有强大的生态系统和丰富的工具支持。成为一名 Java 全栈开发工程师不仅需要掌握后端开发技能,还需要具备前端开发和数据库管理的能力。本文将详细介绍 Java 全栈开发的学习路线&#x…...
【Unity基础】Unity中如何导入字体?
在Unity中,不能像其他软件一样直接使用字体文件,需要通过FontAssetCreator将其转换成Texture的Asset文件,然后才能使用。 本文介绍了使用FontAssetCreator导入字体的过程,并对其参数设置进行了说明。 Font Asset Creator 是 Uni…...
使用NVIDIA GPU加速FFmpeg视频压制:完全指南
引言 在视频处理领域,FFmpeg是一个强大的工具。结合NVIDIA的硬件编码器NVENC,我们可以实现快速高效的视频压制。本文将详细解析一个实用的视频压制命令,帮助你理解每个参数的作用。 核心命令 ffmpeg -i input.mp4 -vf scale640:360 -c:v h…...
Python学习:scipy是什么?
文章目录 一、Scipy简介二、Scipy的组成部分1. 基础功能:2. 特殊函数:3. 优化:4. 积分:5. 插值:6. 信号处理:7. 图像处理:8. 统计分布:9. 空间数据结构和算法:10. 稀疏矩…...
spark的学习-05
SparkSql 结构化数据与非结构化数据 结构化数据就类似于excel表中的数据(统计的都是结构化的数据)一般都使用sparkSql处理结构化的数据 结构化的文件:JSON、CSV【以逗号分隔】、TSV【以制表符分隔】、parquet、orc 结构化的表:…...
SQL注入(SQL Injection)详解
SQL注入(SQL Injection)是一种代码注入技术,它通过在应用程序的输入字段中插入或“注入”恶意的SQL语句,从而操控后端数据库服务器执行非预期的命令。这种攻击方式常用于绕过应用程序的安全措施,未经授权地访问、修改或…...
深入解析 OpenHarmony 构建系统-2-目录结构与核心组件
引言 OpenHarmony作为一款面向全场景的分布式操作系统,其构建系统在开发过程中扮演着至关重要的角色。本文将详细介绍OpenHarmony构建系统的目录结构和核心组件,帮助开发者更好地理解和使用这一强大的工具。 目录结构概览 以下是OpenHarmony构建系统的目录结构,每个目录和…...
网络安全应急响应(归纳)
目录 一、概述二、理论 系统排查 系统基本信息 windowsLinux用户信息 WindowsLinux启动项:开机系统在前台或者后台运行的程序,是病毒等实现持久化驻留的常用方法。 WindowsLinux任务计划:由于很多计算机都会自动加载“任务计划”,…...
【网络协议栈】网络层(上)网络层的基本理解、IP协议格式、网络层分组(内附手画分析图 简单易懂)
绪论 “It does not matter how slowly you go as long as you do not stop.”。本章是自上而下的进入网络协议栈的第三个篇幅–网络层–,本章我将带你了解网络层,以及网络层中非常重要的IP协议格式和网络层的分片组装问题,后面将持续更新网…...
数据库类型介绍
1. 关系型数据库(RDBMS) 关系型数据库是最常见的一类数据库,它们通过表(Table)来存储数据,表之间通过关系(如主键和外键)来关联。 • MySQL:开源的关系型数据库管理系统&…...
一步一步从asp.net core mvc中访问asp.net core WebApi
"从asp.net core mvc中访问asp.net core WebApi"看到这个标题是不是觉得很绕口啊,但的确就是要讲一讲这样的访问。前面我们介绍了微信小程序访问asp.net core webapi(感兴趣的童鞋可以看看前面的博文有关WEBAPI的搭建),这里我们重点不关心如何…...
linux中kubectl命令使用
一.命令介绍 kubectl 是 Kubernetes 集群管理的命令行工具,用于与 Kubernetes API 交互。你可以通过它来管理和操作 Kubernetes 集群中的资源,如 Pod、Deployment、Service 等。下面是如何在不同操作系统上下载和使用 kubectl 的方法。 二.下载 kubect…...
Linux 系统结构
Linux系统一般有4个主要部分:内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。 1. linux内核 内核是操作系统的核心,具有很多最基本功能,它…...
ESP32-S3设备智能化升级,物联网无线AI语音交互,让生活更加便捷和有趣
在人工智能和物联网技术的推动下,无线AI语音交互技术正在成为智能设备的新选择。这种技术的发展,不仅改变了我们与设备的沟通方式,更开启了一个新的智能交互方案。 想象一下,通过简单的语音指令,就能控制家中的灯光、…...
Python的函数(补充浅拷贝和深拷贝)
一、定义 函数的定义:实现【特定功能】的代码块。 形参:函数定义时的参数,没有实际意义 实参:函数调用/使用时的参数,有实际意义 函数的作用: 简化代码提高代码重用性便于维护和修改提高代码的可扩展性…...
oracle查询字段类型长度等字段信息
1.查询oracle数据库的字符集 SELECT * FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER NLS_CHARACTERSET; 2.查询字段长度类型 SELECT * FROM user_tab_columns WHERE table_name user AND COLUMN_NAME SNAME 请确保将user替换为您想要查询的表名。sname为字段名 这里的字…...
C语言 | Leetcode C语言题解之第559题N叉树的最大深度
题目: 题解: /*** Definition for a Node.* struct Node {* int val;* int numChildren;* struct Node** children;* };*/int maxDepth(struct Node* root) {if (!root) {return 0;}int depth 0;// 创建空队列const int qCap 10e4 1;str…...
光流法(Optical Flow)
一、简介 光流法(Optical Flow)是一种用于检测图像序列中像素运动的计算机视觉技术。其基于以下假设: 1.亮度恒定性假设:物体在运动过程中,其像素值在不同帧中保持不变。 2.空间和时间上的连续性:相邻像素之…...
Rancher的安装
1. 概览 1.1 用户界面优势 Rancher 提供了一个直观的图形用户界面(GUI)。对于不熟悉 Kubernetes 复杂的命令行操作(如使用kubectl)的用户来说,通过 Rancher 的界面可以方便地进行资源管理。例如,用户可以在…...
【Linux】获得同一子网下当前在线设备IP/Latency/MAC 通过nmap指定CIDR扫描当前在线设备
【Linux】获得同一子网下当前在线设备IP/Latency/MAC 通过nmap指定CIDR扫描当前在线设备 通过路由器的后台,查看当前在线设备,受到网卡版本的影响,有时会有部分设备看不见MAC和分配的IP。此时,可以借助命令行工具扫描子网下所有连…...
Ubuntu22.04安装DataEase
看到DataEase的驾驶舱,感觉比PowerBI要好用一点,于是搭建起来玩玩。Dataease推荐的操作系统是Ubuntu22.04/Centos 7。 下载了Ubuntu22.04和DataEase 最新版本的离线安装包 一.安装ubuntu22.04 在安装的时候,没有顺手设置IP地址信息ÿ…...
Taro React-Native IOS 打包发布
http网络请求不到 配置 fix react-native facebook::flipper::SocketCertificateProvider‘ (aka ‘int‘) is not a function or func_rn运行debug提示flipper-CSDN博客 Xcode 15(iOS17)编译适配报错_no template named function in namespace std-CS…...
企业网站建设的目的有()/百度推广产品有哪些
学习I/O重定向之前需要知道什么是文件描述符,文件描述符是一个数组的索引号。每个进程都有其打开的一系列文件,这些打开的文件被保持在一个数组中,文件描述符就是某文件在此数组中的索引。一个文件描述符对应于一个文件。unix中大多数程序从s…...
如何做网站免费推广/app拉新平台
<?php for ($i 1; $i < 10; $i) { //for循环输出数值if ($i % 3 0) //判断变量是否为3的整数倍{continue;//跳过本次循环剩余语句}echo "$i<br />"; //输出变量的值 } ?> 转载于:https://www.cnblogs.com/tianpan2019/p…...
wordpress 判断页面名称/宁波免费建站seo排名
原文:C#设计模式之三抽象工厂模式(AbstractFactory)【创建型】一、引言 写了3篇有关设计模式的文章了,大家有了些反馈,说能从中学到一些东西,我感到很欣慰,那就继续努力。今天我要写第四个模式了&#…...
微商网站开发/短网址在线生成
本节目录:接收者:通道侦听器The IChannelListener InterfaceIChannelListener接口IChannelListener<TChannel>接口ChannelListenerBase类型ChannelListenerBase<TChannel>类型创建自定义通道侦听器接收者:通道侦听器 和它们的名…...
即墨网站建设哪里有/简述如何优化网站的方法
课后进行了下面的练习: 1.声明public 不声明参数是public,则main中无法访问。 error: 声明public后即可访问。 2,passing by value or by reference passing by value:method中可以改变数值,method外则不会改变。 结果…...
网站建设与维护网课/安卓优化神器
Java异常处理和设计在程序设计中,进行异常处理是非常关键和重要的一部分。一个程序的异常处理框架的好坏直接影响到整个项目的代码质量以及后期维护成本和难度。试想一下,如果一个项目从头到尾没有考虑过异常处理,当程序出错从哪里寻找出错的…...