Devexpress控件集提供的DataGrid控件,在功能和界面样式上都完爆WinForm的DataGridView控件,以前需要在 DataGridView控件上进行某列的统计,需要在GridView底部重新绘制区域来显示sum,count等计算值。但Devexpress控件 的DataGrid控件,在数据绑定方式上与DataGridView类似,在统计某列合计值得时候提供了自带的合计求值功能,不但是这样,还提供了显示 格式。本文将介绍如何使用自带计算和自定义计算以及自定义显示聚合结果格式来进行说明。

项目工程使用绑定数据方式为DataSet,具体操作流程不再进行说明。

    1. 使用自带计算方式
      首先点击窗体设计器的“Run Designer"按钮,打开属性编译器。

      在打开的属性设计器中找到Options->OptionsView->ShowFooter设置为True.

      下面选择指定的列进行聚合统计。

      选择Columns,在中间部分选择了价格,在右侧栏找到数据->SummaryItem->SummaryType,看到有很多常用的聚合函数显示,选择Sum。注意上边的DisplayFormat,它就是用来设置显示格式的(比如:{0:f2}),也是使用占位符形式。关闭设计器,运行项目
      在DataGrid控件底部显示的合计为12.

    2. 使用自定义计算来统计数据,比如我想在原有的统计结果sum=12的基础上加10。该功能需要使用GridView,(注意是GridView,不是GridControl)的CustomSummaryCalculate事件。在使用之前,还需要将该列的SummaryType 设置成Custom。
      直接上代码了:
if (e.IsTotalSummary && e.SummaryProcess == DevExpress.Data.CustomSummaryProcess.Finalize)
{
GridView view = sender as GridView;
if (e.Item == view.Columns["Price"].SummaryItem)
{
int count = ;
for (int i = ; i < view.DataRowCount; i++)
{
object temp = view.GetRowCellValue(e.RowHandle, "Price");
temp = (temp == DBNull.Value || temp == null) ? : temp;
count += Convert.ToInt32(temp);
}
e.TotalValue = count + ;
}
}
  • 运行项目:
    结果很明显增加了10.
  • 设置列的显示格式,一般情况下我们需要在合计的部分加上汉字,如:合计:12,这时候就需要使用上面提到的DisplayFormat
    将SummaryItem中的DisplayFormat设置为合计:{0}

    到此,关于列求和的阐述就到这了,像其它的聚合函数的使用就不再叙述了。通过使用DataGrid自带求列聚合值方式,发现使用起来相当的方便,除了自定义方式,根本不需要编写任何代码。

最新文章

  1. CartO
  2. log4j日志工具
  3. R 语言机器学习同步推进~
  4. springmvc+mybatis+spring 整合 bootstrap
  5. 异步HTTP请求
  6. 我学hash_map(2)
  7. Scrapinghub执行spider抓取并显示图片
  8. inode结构体成员详解
  9. C# 设置Excel超链接(二)
  10. 插入排序之Java实现
  11. Visual Studio 2012 与此版本的 Windows 不兼容。有关详细信息,请联系 Microsoft
  12. HDU 1033(坐标移动 模拟)
  13. 031_keepalive+nginx保证nginx高可用
  14. python全栈开发day56-mysql
  15. Xshell设置密钥登录CentOS6.5_64位(图文版)
  16. mysql in 排序 也可以按in里面的顺序来排序
  17. Java微信分享接口开发
  18. MySQL用户认证及权限控制
  19. [CodeForces-606E] Freelancer&#39;s Dreams 凸包 模型转换
  20. Android-解析JSON数据(JSON对象/JSON数组)

热门文章

  1. Linux常用指令---ps(查看进程)
  2. IOS开发之—— ShareSDK的使用
  3. iOS开发工具(上班需要必备的软件)
  4. Scrum敏捷精要
  5. html5新增选择器
  6. Eclipse属性文件编辑器---Properties Editor
  7. 【ZOJ 3897】Candy canes//Fiddlesticks
  8. 【poj3070】 Fibonacci
  9. 【bzoj2460】 BeiJing2011—元素
  10. 洛谷P2731骑马修栅栏