「对比评测」标准WPF DataGrid与DevExpress WPF GridControl有何不同?(二)

DevExpress WPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件的衍伸产品,还是以数据为中心的商业智能产品,都能通过DevExpress WPF控件来实现。

本文主要介绍标准WPF DataGrid和DevExpress WPF GridControl之间的主要区别,以及如何使用它从标准WPF DataGrid迁移到DevExpress WPF GridControl。

在上文中(点击这里回顾>>),我们为大家介绍了标准WPF DataGrid和DevExpress WPF GridControl在显示数据、绑定数据时的不同,本文将继续介绍他们在排序、分组和过滤数据时的不同等,希望对大家有所帮助~

获取DevExpress v24.1正式版下载

对数据进行排序、分组和筛选
运行时功能

标准WPF DataGrid在运行时不支持排序、分组和筛选操作。

DevExpress WPF GridControl允许用户以几种方式执行这些操作。

筛选

使用以下选项当中的一个筛选视图数据:

  • Drop-down Filter:用户可以单击列标题中的过滤器图标来显示此菜单。
  • Filter Editor:用户可以使用Filter Editor表单构建筛选标准并创建复杂的筛选条件。

用户可以在运行时清除或禁用过滤器。

自定义排序、分组、过滤

您可以实现自定义排序、分组和筛选逻辑:

自定义排序

要实现自定义排序,将GridColumn.SortMode属性设置为"Custom"并处理GridControl.CustomColumnSort事件。

自定义分组

设置GridColumn.SortMode属性为"Custom",并处理GridControl.CustomColumnGroup事件来实现自定义分组。

自定义筛选

要自定义过滤器逻辑,请执行以下操作当中的一个:

搜索功能

DevExpress GridControl的内置搜索面板可以在视图中突出显示搜索结果,并可选择过滤行。

定义单元格编辑器

标准WPF DataGrid

使用以下类型列将编辑器嵌入单元格:

您也可以使用DataGridTemplateColumn,此列允许您覆盖单元格模板并指定所需的编辑器。

DevExpress WPF GridControl

使用GridColumn对象,每个列根据数据字段类型自动创建一个编辑器。

格式化文本

标准WPF DataGrid

没有内置API来格式化文本或数字字段,您需要使用标准的WPF绑定来显示格式化的值。

DevExpress WPF GridControl

允许您在以下级别指定格式化API:

  • GridControl / GridColumn设置
  • 列编辑器的设置
  • 列编辑器的模板
为单元格和行着色

标准WPF DataGrid

包括允许您为单元格和行着色的样式和模板。

DevExpress WPF GridControl

除了行/单元格样式和模板之外,还支持条件格式机制。

输入验证
异常验证

标准WPF DataGrid

要求使用Binding.ValidatesOnExceptions属性在列级别启用验证。

DevExpress WPF GridControl

自动验证异常输入。

使用IDataErrorInfo和INotifyDataErrorInfo进行验证

标准WPF DataGrid

要求您在列绑定级别使用Binding.ValidatesOnDataErrorsBinding.ValidatesOnNotifyDataErrors属性启用验证。

DevExpress WPF GridControl

IDataErrorInfoINotifyDataErrorInfo接口实现时,自动显示错误信息。

验证规则

标准WPF DataGrid

开箱即用,支持验证规则。

DevExpress WPF GridControl

DevExpress GridControl不直接与验证规则一起工作,处理ValidateCell事件并使用Validation Rules来实现验证逻辑。

其他技术

DevExpress WPF GridControl支持以下标准WPF DataGrid不支持的技术,您可以在以下应用程序级别验证输入并指定不同的错误类型和图标:

  • 模型 - IDXDataErrorInfo
    实现IDXDataErrorInfo接口来在Model级别验证输入,并指定不同的错误类型和图标。
  • 模型 - 数据注释属性
    使用属性来验证模型级别的输入。
  • View/ViewModel - 基于事件的验证
    使用以下事件来验证View/ViewModel级别的输入,并指定不同的错误类型和图标:
相关推荐
数据的世界012 小时前
.NET开发人员学习书籍推荐
学习·.net
paixiaoxin4 小时前
CV-OCR经典论文解读|An Empirical Study of Scaling Law for OCR/OCR 缩放定律的实证研究
人工智能·深度学习·机器学习·生成对抗网络·计算机视觉·ocr·.net
晚安苏州4 小时前
WPF DataTemplate 数据模板
wpf
19004312 小时前
.NET重点
.net
m0_6632340112 小时前
在 .NET 5.0 运行 .NET 8.0 教程:使用 ASP.NET Core 创建 Web API
前端·asp.net·.net
甜甜不吃芥末1 天前
WPF依赖属性详解
wpf
小码编匠1 天前
.NET 下 RabbitMQ 队列、死信队列、延时队列及小应用
后端·c#·.net
Hat_man_1 天前
WPF制作图片闪烁的自定义控件
wpf
真想骂*2 天前
vmime.net_4.dll详解:它是什么,有何用途?
.net