C1 FlexGrid for WinForms:创建分类汇总

时间:2024-10-24 21:39:02

1、分类汇总支持分层聚合。例如,如果你的表格包含销农呷蛸筢售数据,你可能会通过产品、地区和推销员来小计一下以得出总的销售数字。下面的代码说骈跪爸锂明了这一点: 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 finish18: _flex.AutoSizeCols();19: }

2、代码中重要接口说明:_flex.Tree.Column:获取或设置树形结构在哪一列显示。_flex.Subtotal(AggregateEnum.Sum, -1, -1, 3, "Grand Total");参数1:同时方式参数2:当前树节点的级别,-1 为最外层节点参数3:用于获取分组信息的列参数4:统计的列参数5:分组说明文本信息即上述代码设置了三层分组,第一层为所有销售信息的汇总。第二层以产品类别分组,第三层以区域信息进行分组

3、当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:

4、执行此代码后,表格看起来是这样的:除了总量之外,你也可以计算其他分类汇总(例如,平均值或百分比),并计算每一行的几个汇总(例如,毛销售额及净销售额)

C1 FlexGrid for WinForms:创建分类汇总
© 2025 手抄报圈
信息来自网络 所有数据仅供参考
有疑问请联系站长 site.kefu@gmail.com