DevExpress WPF中文教程:Grid - 如何排序、分组、过滤数据(设计时)?

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

本教程演示如何在DevExpress GridControl中对数据进行排序、根据列对数据进行分组、以及创建过滤器。(注意本文是基于上文的基础上演变的,点击这里可回顾>>

获取DevExpress WPF v24.1正式版下载(Q技术交流:532598169)

排序数据

您可以使用GridControl对数据进行排序,下面的示例根据Order Date和Customer Id列对数据进行排序:

  1. 为订单日期和客户Id列指定ColumnBase.SortOrder属性,以便根据它们对数据进行排序。

  2. 为这些列指定ColumnBase.SortIndex属性来设置排序优先级。

MainView.xaml

XML 复制代码
<dxg:GridColumn FieldName="CustomerId" SortIndex="1" SortOrder="Ascending"/>
<dxg:GridColumn FieldName="OrderDate" SortIndex="0" SortOrder="Descending"/>
分组数据

您可以使用GridControl对数据进行分组,下面的示例根据Ship Country和Ship City列对数据进行分组:

为Ship Country和Ship City列指定GridColumn.GroupIndex属性,根据它们对数据进行分组并设置组优先级:

MainView.xaml

XML 复制代码
<dxg:GridColumn FieldName="ShipCity" GroupIndex="1"/>
<dxg:GridColumn FieldName="ShipCountry" GroupIndex="0"/>
过滤数据

您可以使用GridControl来过滤数据,下面的示例应用了一个过滤器来显示从2020年初开始运费超过100美元的记录:

GridControl在设计时不从数据库加载数据,指定DesignTimeDataObjectType属性来获取数据源中字段类型的信息:

MainView.xaml

XML 复制代码
<UserControl ...
xmlns:Models="clr-namespace:WPF_DataGrid_GetStarted.Models">
<!-- ... -->
<dxg:GridControl ...
DesignTimeDataObjectType="{x:Type Models:Order}">
  1. 选择GridControl并调用其Quick Actions菜单。

  2. 调用Filter Editor窗口:

  1. 指定过滤器表达式:
相关推荐
游乐码1 小时前
UnityGUI(五)GUI控件综合使用
开发语言·unity·c#
程序leo源1 小时前
C语言知识总结
c语言·开发语言·c++·经验分享·笔记·青少年编程·c#
烛阴2 小时前
TEngine 入门系列(二):三件套环境搭建 -- Unity + TEngine + AI 助手
前端·c#·unity3d
The Shio6 小时前
OptiByte 操练场:面向 IoT/嵌入式的协议可视化调试工具
网络·嵌入式硬件·物联网·c#·.net·业界资讯·iot
龙侠九重天8 小时前
C# 调用 TensorFlow:迁移学习与模型推理实战指南
人工智能·深度学习·机器学习·c#·tensorflow·迁移学习·tensorflow.net
我是唐青枫9 小时前
C#.NET YARP 认证授权实战:在网关层统一接入 JWT
开发语言·c#·.net
暖馒9 小时前
WPF绑定由简到繁深入笔记
笔记·wpf
程序leo源9 小时前
Linux深度理解
linux·运维·服务器·c语言·c++·青少年编程·c#
白菜上路10 小时前
C# .net 生成版本号自动变更
c#·.net·visual studio
加号310 小时前
【C#】 通过 Python.NET 调用 Python pyd 扩展模块:多类交互与参数传递实践指南
python·c#·.net