使用XtraGrid自定义列计算1 z
Devexpress控件集提供的DataGrid控件,在功能和界面样式上都完爆WinForm的DataGridView控件,以前需要在 DataGridView控件上进行某列的统计,需要在GridView底部重新绘制区域来显示sum,count等计算值。但Devexpress控件 的DataGrid控件,在数据绑定方式上与DataGridView类似,在统计某列合计值得时候提供了自带的合计求值功能,不但是这样,还提供了显示 格式。本文将介绍如何使用自带计算和自定义计算以及自定义显示聚合结果格式来进行说明。
项目工程使用绑定数据方式为DataSet,具体操作流程不再进行说明。
- 使用自带计算方式
首先点击窗体设计器的“Run Designer"按钮,打开属性编译器。
在打开的属性设计器中找到Options->OptionsView->ShowFooter设置为True.下面选择指定的列进行聚合统计。
选择Columns,在中间部分选择了价格,在右侧栏找到数据->SummaryItem->SummaryType,看到有很多常用的聚合函数显示,选择Sum。注意上边的DisplayFormat,它就是用来设置显示格式的(比如:{0:f2}),也是使用占位符形式。关闭设计器,运行项目
在DataGrid控件底部显示的合计为12.
- 使用自定义计算来统计数据,比如我想在原有的统计结果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自带求列聚合值方式,发现使用起来相当的方便,除了自定义方式,根本不需要编写任何代码。
使用XtraGrid自定义列计算1 z的更多相关文章
- 使用XtraGrid自定义列计算 z
绑定Master-Detail 关系 数据也是数据显示的一种方式,此实例使用后台代码创建数据源并绑定到gridcontrol. 其实方式参见:点击打开链接 先看效果图(默认方式) 直接给出后台代码,主 ...
- DevExpress 之 GridControl 自定义列
Ø 前言 DevExpress 控件大家应该都有所了解,使用这个框架实现B/S或C/S的,都是非常出色的.本文主要讨论下 GridControl 中如何[自定义列]或[计算列],可使用以下两种方法实 ...
- 在【自定义列】中编辑简单运算公式(Power Query 之 M 语言)
数据源: "品名"."数量"."单价"三列 目标: 计算销售单价(单价*1.2) 解决方案: 在[自定义列]中使用乘法四则运算 步骤: 打开 ...
- EasyUI Datagrid 自定义列、Foolter及单元格编辑
1:自定义列,包括 Group var head1Array = []; head1Array.push({ field: 'Id', title: 'xxxx', rowspan: 2 }); he ...
- Android窗口管理服务WindowManagerService计算窗口Z轴位置的过程分析
文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/8570428 通过前面几篇文章的学习,我们知道了 ...
- DevExpress ASP.NET 使用经验谈(8)-ASPxGridView自定义列和基本事件
为演示本节示例,我们在原来Users表增加[性别Gender].[兴趣爱好Hobbies],[CreateTime创建时间],[ModifyTime]修改时间这4个字段, ALTER TABLE [d ...
- Dos.ORM Select查询 自定义列
自定义列 .Select( p = >new{ test = p.id}) // 同sql 列名 as 新列名 如下是 自己在写代码的例子,查询,分页,where条件,排序 var where ...
- 后台生成EXCEL文档,自定义列
后台生成EXCEL文档,自定义列 //response输出流处理 //设置编码.类型.文件名 getResponse().reset(); getResponse().setCharacterEnco ...
- NOPI实现导入导出泛型List,支持自定义列
概述 业务上需要自定义列的Excel的导入导出,在网上看了好多资料,很多都是有Bug而且都是支持Excel和DataTable的转换,所以自己总结了一下,应用.NET平台上的NPOI封装了支持自定义列 ...
随机推荐
- Activiti系列:几个历史数据表之间的关系
1. 一个流程执行完之后,会在act_hi_procinst表内产生一条数据: 3. 一个流程中的每个节点都会在act_hi_actinst表内产生一条数据,比如下面这个流程执行完之后会在在act_h ...
- Java系列:报错信息The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
Javaweb工程类中没有添加Tomcat运行时相关类导致. 下面是具体的解决方法: 1.右击web工程->属性或Build Path->Java Build Path->Libra ...
- [CareerCup] 13.8 Smart Pointer 智能指针
13.8 Write a smart pointer class. A smart pointer is a data type, usually implemented with templates ...
- PHP Yii1.1.13(一):命令行创建应用~shop
第一节 初始目录结构 (1)初识目录结构 在创建应用之前,我们来看一下Yii 1.x版本的目录结构:将yii-1.1.13安装文件解压到网站根目录下,打开framework目录,其目录如下图所示 (2 ...
- EF实体框架之CodeFirst三
前两篇博客学习了数据库映射和表映射,今天学习下数据库初始化.种子数据.EF执行sql以及执行存储过程这几个知识. 一.数据库初始化策略 数据库初始化有4种策略 策略一:数据库不存在时重新创建数据库 D ...
- css的img移上去边框效果及CSS透明度
css的img移上去边框效果: .v_comment img{ height:36px; height:36px; float:left; padding:1px; margin:2px; borde ...
- 一款轻量级移动web开发框架
本帖最后由 yangzhu230 于 2013-9-11 00:39 编辑 如果我说要推荐zepto你肯定说“切,这地球人都知道,又一个标题党” 不卖关子,开门见山我推荐的是[百度]的GMU GMU是 ...
- java日期处理总结
Java日期时间使用总结 一.Java中的日期概述 日期在Java中是一块非常复杂的内容,对于一个日期在不同的语言国别环境中,日期的国际化,日期和时间之间的转换,日期的加减运算,日期的展示格式 ...
- ansible 使用方法
免密钥方式登陆: [root@yizhen ~]# ssh-keygen -t rsa[root@yizhen ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168 ...
- 复习CSS
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...