C1FlexGrid.Subtotal方法可以增加包含普通(非小计)行的汇总数据的分类汇总行。

分类汇总支持分层聚合。例如,如果你的表格包含销售数据,你可能会通过产品、地区和推销员来小计一下以得出总的销售数字。下面的代码说明了这一点:

  1:         private void UpdateTotals()
  2:         {
  3:             // clear existing totals
  4:             _flex.Subtotal(AggregateEnum.Clear);
  5:
  6:             // calculate subtotals (three levels, totals on every column)
  7:             for (int c = 3; c < _flex.Cols.Count; c++)
  8:             {
  9:                 if (_chkGrand.Checked)
 10:                     _flex.Subtotal(AggregateEnum.Sum, 0, -1, c, "各类产品合计");
 11:                 if (_chkDirection.Checked)
 12:                     _flex.Subtotal(AggregateEnum.Sum, 1, 1, c, "{0}合计");
 13:                 if (_chkRegion.Checked)
 14:                     _flex.Subtotal(AggregateEnum.Sum, 2, 2, c, "{0}方区域合计");
 15:             }
 16:
 17:             // done, autosize columns to finish
 18:             _flex.AutoSizeCols();
 19:         }

代码中重要接口说明:

_flex.Tree.Column:获取或设置树形结构在哪一列显示。

_flex.Subtotal(AggregateEnum.Sum, -1, -1, 3, "Grand Total");

参数1:同时方式

参数2:当前树节点的级别,-1 为最外层节点

参数3:用于获取分组信息的列

参数4:统计的列

参数5:分组说明文本信息

即上述代码设置了三层分组,第一层为所有销售信息的汇总。第二层以产品类别分组,第三层以区域信息进行分组。

当C1FlexGrid.Subtotal方法添加了汇总信息行,它会自动分配汇总样式到新的行(有五个层级的分类汇总内置样式)。你可以使用“样式编辑器”或代码在设计器中改变大纲样式的属性,以此来自定义分类汇总行的外观。例如:

  1: // 设置分类汇总的样式。
  2: CellStyle cs;
  3: cs = _flex.Styles[CellStyleEnum.GrandTotal];
  4: cs.BackColor = Color.Black;
  5: cs.ForeColor = Color.White;
  6: cs.Font = new Font(Font, FontStyle.Bold);
  7: cs = _flex.Styles[CellStyleEnum.Subtotal0];
  8: cs.BackColor = Color.DarkRed;
  9: cs.ForeColor = Color.White;
 10: cs.Font = new Font(Font, FontStyle.Bold);
 11: cs = _flex.Styles[CellStyleEnum.Subtotal1];
 12: cs.BackColor = Color.DarkBlue;
 13: cs.ForeColor = Color.White;
 14: 

执行此代码后,表格看起来是这样的:

除了总量之外,你也可以计算其他分类汇总(例如,平均值或百分比),并计算每一行的几个汇总(例如,毛销售额及净销售额)。

Demo 下载:

VS2010 + C# + Framework 4.0 + Studio for Winforms 2013V3 点击下载

VS2010 + VB.NET + Framework 4.0 + Studio for Winforms 2013V3 点击下载

Studio for Winforms FlexGrid: 创建分类汇总的更多相关文章

  1. Studio for Winforms FlexGrid:导出到 PDF 文件

    本篇文章主要介绍如何导出 FlexGrid 到 PDF 格式文件.本文源于论坛用户,有多个用户提出如何把 FlexGrid 导出到 PDF 文件的需求.在这里共享给大家. 当前,ComponentOn ...

  2. GitHub上史上最全的Android开源项目分类汇总 (转)

    GitHub上史上最全的Android开源项目分类汇总 标签: github android 开源 | 发表时间:2014-11-23 23:00 | 作者:u013149325 分享到: 出处:ht ...

  3. GitHub上史上最全的Android开源项目分类汇总

    今天在看博客的时候,无意中发现了 @Trinea 在GitHub上的一个项目 Android开源项目分类汇总 ,由于类容太多了,我没有一个个完整地看完,但是里面介绍的开源项目都非常有参考价值,包括很炫 ...

  4. Android 开源项目分类汇总(转)

    Android 开源项目分类汇总(转) ## 第一部分 个性化控件(View)主要介绍那些不错个性化的 View,包括 ListView.ActionBar.Menu.ViewPager.Galler ...

  5. Android 开源项目分类汇总

    Android 开源项目分类汇总 Android 开源项目第一篇——个性化控件(View)篇  包括ListView.ActionBar.Menu.ViewPager.Gallery.GridView ...

  6. Android开源项目分类汇总【畜生级别】[转]

    Android开源项目分类汇总 欢迎大家推荐好的Android开源项目,可直接Commit或在 收集&提交页 中告诉我,欢迎Star.Fork :) 微博:Trinea    主页:www.t ...

  7. Android开源项目分类汇总[转]

    Android开源项目分类汇总 如果你也对开源实现库的实现原理感兴趣,欢迎 Star 和 Fork Android优秀开源项目实现原理解析欢迎加入 QQ 交流群:383537512(入群理由需要填写群 ...

  8. Android开源项目分类汇总【畜生级别】

    From :http://blog.csdn.net/forlong401/article/details/25459403?c=6c4cd677a617db4655988e41ee081691#t7 ...

  9. Android开源项目分类汇总-转载

    太长了,还是转载吧...今天在看博客的时候,无意中发现了@Trinea在GitHub上的一个项目Android开源项目分类汇总,由于类容太多了,我没有一个个完整地看完,但是里面介绍的开源项目都非常有参 ...

随机推荐

  1. Android之TextView文字绘制流程

    一:TextView的onDraw()方法: 1.第一句restartMarqueeIfNeeded()绘制字幕滚动. protected void onDraw(Canvas canvas) { r ...

  2. PowerPoint 打开文档发现.pptx中胡内容有问题

    一.问题的提出 有一个文件,在window 7操作系统中通过邮箱地址保存到本地,结果打开的时候出现[PowerPoint 打开文档发现 文件.pptx中胡内容有问题] 然后提示[如果您信任此演示文稿的 ...

  3. 【转载】JDBC连接各种数据库的字符串

    oracle    driverClass:oracle.jdbc.driver.OracleDriver    url:jdbc:oracle:thin:@127.0.0.1:1521:dbname ...

  4. NopCommerce 开源商城下载配置安装

    NopCommerce 是一款开源商城系统,提供了完整的解决方案.应该来说是目前最完善,功能最强劲的商城系统.基于ASP.NET MVC 框架,EF框架,数据库MSSQL. 系统版本涵盖了从MVC3. ...

  5. Python 程序如何高效地调试?

    作者:Rui L链接:https://www.zhihu.com/question/21572891/answer/26046582来源:知乎著作权归作者所有,转载请联系作者获得授权. 这个要怒答一发 ...

  6. 一款 .NET 下的轻量级 REST 和 HTTP API 客户端 - RestSharp

    项目地址:https://github.com/restsharp/RestSharp Features Supports .NET 3.5+, Silverlight 4, Windows Phon ...

  7. AutoMapper用法一瞥

    前段时候做个小项目用到了autoMapper(参考了NOP里的用法),感觉还行,用起来挺方便的.首先复杂的东西我就不说了,至于详细的教程我也就不写了,比较园子里有很多这样的文章,我就分享下,在项目中实 ...

  8. android 视频的缩略图 缓存机制和 异步加载缩略图

    在这次的工作开发项目中,涉及到一个视频缩略图的视频列表:这个在大家看来,制作视频缩略图就是两行代码就搞定的事.确实是这样的,百度一下,每个帖子都知道制作视频缩略图的方法,在这里确实也是一样的,但是我要 ...

  9. 基于selenium的pyse自动化测试框架

    WebUI automation testing framework based on Selenium 介绍: pyse基于selenium(webdriver)进行了简单的二次封装,比seleni ...

  10. 创意欣赏:20幅字体排版(Typography)素描

    通常我们都只关注最终的作品,但其实幕后还有很多的过程,其中一个是素描.素描用来表达最初思想观念的原型.有时客户需要一个独特的品牌新LOGO或字体,这时先绘制在纸上是比较方便的,之后扫描到 Photos ...