news 2026/8/7 1:08:27

界面控件DevExpress WinForms中文教程:Data Grid - 总摘要

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
界面控件DevExpress WinForms中文教程:Data Grid - 总摘要

DevExpress WinForms拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!

DevExpress GridControl允许您显示总数,例如记录的数量以及列中的最大值和最小值。在本教程中,您将了解最终用户如何使用内置页脚菜单添加或删除总数,如何防止他们自定义指定的总数,以及如何在设计时或在代码中预定义网格总数。

获取DevExpress WinForms v25.1正式版下载

开始

从显示简单任务数据的GridControl开始。

显示视图页脚

要启用总的摘要显示和最终用户交互,您需要显示View Footer(视图页脚)。要做到这一点,展开视图的GridView.OptionsView属性并打开GridOptionsView.ShowFooter 选项。

终端用户的功能

由于视图的页脚现在是可见的,最终用户可以使用页脚上下文菜单添加总的摘要。右键单击Unit Price列下的页脚,然后选择Count。

页脚单元格现在显示了总记录计数,在Count列中,显示列值的总和。

如果右键单击现有的总摘要单元格,则可以使用Add New Summary菜单项。

使用此项可创建计算Unit Price列中最大值的附加摘要,还可以更改页脚单元格中使用的函数。右键单击Count,将汇总函数更改为Min

要隐藏特定的总价值,请右键单击该值并在上下文菜单中选择None。若要隐藏特定列下的所有摘要,请使用Clear Summary Items选项。

限制终端用户的功能

如果您不希望最终用户更改预定义的摘要,请跳转到显示视图设置的Property(属性网格),展开GridView.OptionsMenu属性,并禁用GridOptionsMenu.EnableFooterMenu选项。这将禁用上下文菜单,从而使最终用户无法操作摘要。

在设计时创建总摘要

下一步是了解如何在设计时创建总的摘要。

创建单个摘要

选择Unit Price列并展开其GridColumn.SummaryItem属性,保持GridSummaryItem.FieldName属性不变(其目的将在后面讨论)。将GridSummaryItem.SummaryType属性设置为SummaryItemType.Sum,来指定所需的聚合函数。最后,指定GridSummaryItem.DisplayFormat属性来自定义摘要值的文本格式。

运行应用程序并注意指定的摘要值显示在网格的页脚中。

然后,使用GridSummaryItem.FieldName 属性保持不变。跳转到显示总摘要设置的Property(属性)网格,并将GridSummaryItem.FieldName 属性设置为OrderSum字段。您将看到汇总值已经改变,另一个字段的值被用来计算总价值。

创建多个摘要

返回到设计时,查看如何在单个列下创建多个汇总。选择Order Sum列,然后单击GridColumn.Summary属性旁边的省略号按钮,这将调用一个集合编辑器,该编辑器已在列表中包含一个摘要项,但将其摘要类型设置为SummaryItemType.None。将类型更改为SummaryItemType.Max,来在Order Sum列中显示最大值。GridSummaryItem.DisplayFormat属性会自动改变,通过单击Add按钮添加两个新项。以同样的方式,将它们的GridSummaryItem.SummaryType属性分别设置为SummaryItemType.Min和SummaryItemType.Average。之后,单击OK保存更改并关闭编辑器。

再次运行应用程序,Order Sum列的页脚显示三个单独的总价值,一个在另一个下面。

在代码中创建总摘要

最后,在代码中创建总的摘要。为Create Summaries按钮编写Click事件处理程序。处理程序用所需的摘要类型、字段名和显示格式创建两个新的GridColumnSummaryItem对象,然后将它们添加到Count列的GridColumn.Summary集合中。

C#

private void btn_CreateSummaries_ItemClick(object sender, ItemClickEventArgs e) { GridColumnSummaryItem item1 = new GridColumnSummaryItem(DevExpress.Data.SummaryItemType.Max, "Count", "MAX Count={0}"); GridColumnSummaryItem item2 = new GridColumnSummaryItem(DevExpress.Data.SummaryItemType.Min, "Count", "MIN Count={0}"); gridView.Columns["Count"].Summary.Add(item1); gridView.Columns["Count"].Summary.Add(item2); }

运行应用程序并单击Create Summaries按钮,结果Count列的页脚显示两个指定的总数。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/7 23:05:55

EdgeDeflector终极指南:重夺Windows浏览器选择权

你是否曾经在Windows系统中遇到过这样的尴尬:明明精心设置了默认浏览器,但Cortana搜索结果、系统帮助文档中的链接却固执地在Microsoft Edge中打开?🤔 这种感觉就像是精心布置的客厅里,总有人擅自改变你的家具摆放顺序…

作者头像 李华
网站建设 2026/8/7 15:43:04

策略模式VS if-else:性能对比实测

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 请生成两个Java代码实现:1. 使用if-else实现多种算法选择;2. 使用策略模式实现相同功能。然后添加JMH性能测试代码,比较两种实现的内存占用和执行…

作者头像 李华
网站建设 2026/8/7 20:52:00

KlipperScreen触摸屏界面终极安装完整指南

KlipperScreen触摸屏界面终极安装完整指南 【免费下载链接】KlipperScreen GUI for Klipper 项目地址: https://gitcode.com/gh_mirrors/kl/KlipperScreen KlipperScreen是一款专为Klipper 3D打印机设计的触摸屏图形用户界面,通过与Moonraker API服务器通信&…

作者头像 李华
网站建设 2026/8/7 6:04:52

比Docker官方源快10倍:国内镜像源深度测评

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个Docker镜像源测评工具,能够自动测试各镜像源的以下指标:1) 不同地区下载速度;2) 服务可用性(uptime)&#xff1b…

作者头像 李华
网站建设 2026/8/7 15:28:08

如何在Kotaemon中自定义评分指标进行A/B测试?

如何在Kotaemon中自定义评分指标进行A/B测试? 在构建智能问答系统时,我们常常面临一个尴尬的现实:模型明明通过了BLEU和ROUGE测试,用户却依然抱怨“答非所问”。这背后暴露出的问题是——传统的NLP评估指标已经跟不上真实业务场景…

作者头像 李华