DevExpress WinForms拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!
在本教程中,您将学习如何创建和自定义在分组行和分组页脚中显示的摘要,还将看到内置的上下文菜单和对话框,它们允许最终用户添加、删除或自定义分组摘要。最后,您将学习如何在代码中添加分组摘要。
获取DevExpress WinForms v25.1正式版下载
DevExpress技术交流群11:749942875 欢迎一起进群讨论
开始
从一个应用程序开始,它有一个GridControl,其中的数据已经分组。

在分组行中创建分组摘要
若要创建计算每个分中记录数的组摘要,请调用Grid Designer并切换到Group Summary Items Page添加新项。默认情况下这些值将按分组行显示,在这个摘要中保持这种方式,将GridSummaryItem.SummaryType 属性设置为SummaryItemType.Count,由于Count函数只是计算每个分组中的记录数,因此可以将GridSummaryItem.FieldName属性保留为空,此摘要使用默认文本格式。

运行应用程序,分组行显示对应组内的记录数。

提示:使用GridOptionsBehavior.AlignGroupSummaryInGroupRow属性在相应列标题下的分组行中显示分组摘要。
在分组页脚中创建分组摘要
返回到设计时,跳转到Group Summary Items设计器页面并添加新项,此摘要项将计算Unit Price列中的最大值,并将显示在同一列下的分组页脚中。因此将GridSummaryItem.FieldName和GridGroupSummaryItem.ShowInGroupColumnFooter属性设置为UnitPrice,然后将GridSummaryItem.SummaryType属性设置为SummaryItemType.Max。最后,通过设置GridSummaryItem.DisplayFormat 属性来自定义摘要值的显示格式。

运行应用程序,展开顶部分组行,来查看其中包含新创建的摘要项的分组页脚。

使用分组摘要上下文菜单
如果分组页脚可见,终端用户可以更改现有的分组摘要,或者使用内置的上下文菜单创建新的分组摘要。

摘要值是立即更新,现在右键单击Count列下的分组页脚单元格,然后选择Max,从而添加一个新的摘要项。

要隐藏现有的分组摘要,请右键单击它并选择“None”。
自定义分组摘要
使用Property网格,将GridSummaryItem.SummaryType属性设置回SummaryItemType.Max,并自定义摘要的显示格式。

如果您将GridSummaryItem.FieldName属性更改为OrderSum,将获得一个根据OrderSum字段中的值计算的摘要值。

您还可以将摘要移动到另一列的页脚,或者使用GridGroupSummaryItem.ShowInGroupColumnFooter 属性对行进行分组。

分组页脚可见性
如果在分组页脚中没有要显示的分组摘要,则页脚会自动消失。
返回到设计时,选择网格视图,展开GridView.OptionsView属性并将GridOptionsView.GroupFooterShowMode设置为GroupFooterShowMode.VisibleAlways。

再次运行应用程序,现在无论是否要显示摘要项或是否展开或折叠分组行,都会为每个分组显示分组页脚。

启用和使用分组摘要编辑器
您还可以启用内置UI,以便最终用户可以创建分组摘要,并在分组行中显示。展开View的GridView.OptionsMenu属性并启用GridOptionsMenu.ShowGroupSummaryEditorItem 选项。

运行应用程序并右键单击分组列标题,选择Group Summary Editor…来调用摘要编辑器对话框。

在可用列表中找到Order Sum列,选中Average复选框然后单击OK。现在分组行显示另一个摘要,其中包含针对Order Sum列计算的平均值。

在代码中创建分组摘要
最后在代码中创建一个新的分组摘要,它创建一个新的GridGroupSummaryItem对象,指定其所需的属性,并将其添加到视图的GridView.GroupSummary 集合中。
C#
private void btn_CreateSummary_ItemClick(object sender, ItemClickEventArgs e) {
GridGroupSummaryItem item = new GridGroupSummaryItem();
item.FieldName = "OrderSum";
item.ShowInGroupColumnFooter = gridView.Columns["OrderSum"];
item.SummaryType = DevExpress.Data.SummaryItemType.Sum;
item.DisplayFormat = "Sum = {0:c2}";
gridView.GroupSummary.Add(item);
}
运行应用程序并单击按钮,在Order Sum列下出现一个新的分组页脚摘要。

更多DevExpress线上公开课、中文教程资讯请上中文网获取
关于慧都科技
慧都是⼀家⾏业数字化解决⽅案公司,专注于软件、⽯油与⼯业领域,以深⼊的业务理解和⾏业经验,帮助企业实现智能化转型与持续竞争优势。
慧都科技是DevExpress的中国区的合作伙伴,DevExpress作为用户界面领域的优秀产品,帮助企业高效构建权限管理、数据可视化(如网格/图表/仪表盘)、跨平台系统(WinForms/ASP.NET/.NET MAUI)及行业定制解决方案,加速开发并强化交互体验。

欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明:文章转载自:DevExpress控件中文网 [https://www.devexpresscn.com/]
本文地址:https://www.devexpresscn.com/post/5554.html
相关产品: DevExpress WinForms Subscription, DevExpress Universal Subscription,
联系电话:023-68661681



返回