提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
原创|使用教程|编辑:龚雪|2020-04-01 09:49:54.783|阅读 468 次
概述:DevExpress WinForms安装附带两个允许最终用户构建过滤器查询的控件:提供GUI的Filter控件和将Filter控件与基于文本输入的面板组合在一起的Filter Editor控件。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
下载DevExpress v19.2完整版 DevExpress v19.2汉化资源获取
DevExpress Winforms Controls 内置140多个UI控件和库,完美构建流畅、美观且易于使用的应用程序。想要体验?点击下载>>
DevExpress WinForms安装附带两个允许最终用户构建过滤器查询的控件:提供GUI的Filter控件和将Filter控件与基于文本输入的面板组合在一起的Filter Editor控件。WinForms中,大多数数据感知控件都使用这些组件,但是您也可以将其包含在自己的表单中,并根据需要将其绑定到数据感知控件中。
在v19.1中为FilterCriteriaDisplayStyle设置引入Visual选项,它结合了对Filter Panel和Filter Control的可视化更改,使用涂有皮肤颜色的小块显示标准。在构建表达式时,它还使用下拉菜单而不是组合框来选择条件。
gridView1.OptionsView.FilterCriteriaDisplayStyle = DevExpress.XtraEditors.FilterCriteriaDisplayStyle.Visual;
菜单是完全可定制的,此类定制工作的主要入口点是事件FilterEditorCreated,它提供对FilterEditorControl实例的访问,而后者又可以处理三个事件。
PopupMenuShowing允许您隐藏、删除和重命名项目,并更改任何Filter Editor Control菜单图标,用于此目的的相关菜单具有e.MenuType == FilterControlMenuType.Clause:
gridView1.FilterEditorCreated += OnFilterEditorCreated; private void OnFilterEditorCreated(object sender, DevExpress.XtraGrid.Views.Base.FilterControlEventArgs e) { e.FilterEditor.PopupMenuShowing += OnPopupMenuShowing; } private void OnPopupMenuShowing(object sender, DevExpress.XtraEditors.Filtering.PopupMenuShowingEventArgs e) { if (e.MenuType == FilterControlMenuType.Clause) { var node = e.CurrentNode as ClauseNode; // customize function menus for DateTime fields if (node != null && node.Property.Type == typeof(DateTime)) { e.Menu.Hide(ClauseType.Equals); e.Menu.Remove(ClauseType.DoesNotEqual); e.Menu.Hide( DevExpress.XtraEditors.Controls.StringId. FilterAdvancedDateTimeOperatorMenuCaption); var menuItem = e.Menu.Find(ClauseType.Between); menuItem.Caption = "Between A and B"; menuItem.ImageOptions.SvgImage = MySvgImage1; } } }
处理事件InitNode来初始化用户创建的新FilterEditor节点,例如分配默认功能和运算符。 在下面的示例中,如果用户为字段ShippingDate创建新条件,则将首先选择函数IsWeekend,该功能包含也被配置为所有字符串字段的默认值。
gridView1.FilterEditorCreated += OnFilterEditorCreated; private void OnFilterEditorCreated(object sender, DevExpress.XtraGrid.Views.Base.FilterControlEventArgs e) { e.FilterEditor.InitNode += OnInitNode; } private void OnInitNode(object sender, InitNodeEventArgs e) { if (e.IsNewNode) { e.PropertyName = "ShippingDate"; e.SetOperation("IsWeekend"); } else if (e.PropertyType == typeof(string)) e.SetOperation(FunctionOperatorType.Contains); }
为BeforeShowValueEditor实现一个处理程序,来自定义Filter Editor Controls中使用的值编辑器。例如,大多数DateTime函数使用日期操作数并使用Calendar编辑器。但是,自定义函数InsideDaysOfToday(以上)接受天数的整数值,下面的代码将默认的Calendar编辑器更改为SpinEdit控件。
gridView1.FilterEditorCreated += OnFilterEditorCreated; private void OnFilterEditorCreated(object sender, DevExpress.XtraGrid.Views.Base.FilterControlEventArgs e) { e.FilterEditor.BeforeShowValueEditor += OnBeforeShowValueEditor; } private void OnBeforeShowValueEditor(object sender, ShowValueEditorEventArgs e) { var node = e.CurrentNode as ClauseNodeEx; if(node != null && node.Property.Type == typeof(DateTime) && Equals(node.FunctionType, WithinDaysOfTodayFunction.FunctionName)) e.CustomRepositoryItem = spinEdit; }
DevExpress技术交流群:540330292 欢迎一起进群讨论
扫描关注DevExpress中文网微信公众号,及时获取最新动态及最新资讯
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
文章转载自:慧都网本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
行业领先的界面控件开发包,帮助企业构建卓越应用!
DevExpress WinForms Subscription为Windows Forms平台创建具有影响力的业务解决方案,高性价比WinForms界面控件套包。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢