1:
2: #region 对GridControl表格编程,实现一些基础的统计和计算功能;
3:
4: /// <summary>
5: /// 增加统计数据在GridView的底部;
6: /// //add by 郝永和
7: /// </summary>
8: /// <param name="gridView">要增加分组统计的GridView</param>
9: /// <param name="sFieldName">字段名称</param>
10: /// <param name="tkType">统计类型 录入 TKTotalType.TotalType. 进行选择即可</param>
11: /// <param name="sDispFormat">字段的显示格式如 "0.00","0.000"</param>
12: public void TKFuncGridViewAddSummery(GridView gridView, string sFieldName, string tkType, string sDispFormat)
13: {
14: try
15: {
16: gridView.OptionsView.ShowFooter = true;
17: gridView.OptionsView.ShowGroupedColumns = true;
18: gridView.Columns.ColumnByFieldName(sFieldName).ColumnEdit.DisplayFormat.FormatType = FormatType.Numeric;
19: if (sDispFormat.Length > 0)
20: {
21: gridView.Columns.ColumnByFieldName(sFieldName).ColumnEdit.DisplayFormat.FormatString = sDispFormat;
22: }
23: else
24: {
25: gridView.Columns.ColumnByFieldName(sFieldName).ColumnEdit.DisplayFormat.FormatString = "0.00";
26: }
27: if (tkType == TKTotalType.TotalType.记录个数)
28: {
29: gridView.GroupSummary.Add(SummaryItemType.Count, sFieldName);
30: gridView.Columns[sFieldName].SummaryItem.FieldName = sFieldName;
31: gridView.Columns[sFieldName].SummaryItem.DisplayFormat = TKTotalType.TotalType.记录个数;
32: gridView.Columns[sFieldName].SummaryItem.SummaryType = SummaryItemType.Count;
33: }
34: if (tkType == TKTotalType.TotalType.金额合计)
35: {
36: gridView.GroupSummary.Add(SummaryItemType.Sum, sFieldName);
37: gridView.Columns[sFieldName].SummaryItem.FieldName = sFieldName;
38: gridView.Columns[sFieldName].SummaryItem.DisplayFormat = TKTotalType.TotalType.金额合计;
39: gridView.Columns[sFieldName].SummaryItem.SummaryType = SummaryItemType.Sum;
40: }
41: if (tkType == TKTotalType.TotalType.数值合计)
42: {
43: gridView.GroupSummary.Add(SummaryItemType.Sum, sFieldName);
44: gridView.Columns[sFieldName].SummaryItem.FieldName = sFieldName;
45: gridView.Columns[sFieldName].SummaryItem.DisplayFormat = TKTotalType.TotalType.数值合计;
46: gridView.Columns[sFieldName].SummaryItem.SummaryType = SummaryItemType.Sum;
47: }
48: if (tkType == TKTotalType.TotalType.平均值)
49: {
50: gridView.GroupSummary.Add(SummaryItemType.Average, sFieldName);
51: gridView.Columns[sFieldName].SummaryItem.FieldName = sFieldName;
52: gridView.Columns[sFieldName].SummaryItem.DisplayFormat = TKTotalType.TotalType.平均值;
53: gridView.Columns[sFieldName].SummaryItem.SummaryType = SummaryItemType.Average;
54: }
55: if (tkType == TKTotalType.TotalType.最大值)
56: {
57: gridView.GroupSummary.Add(SummaryItemType.Sum, sFieldName);
58: gridView.Columns[sFieldName].SummaryItem.FieldName = sFieldName;
59: gridView.Columns[sFieldName].SummaryItem.DisplayFormat = TKTotalType.TotalType.最大值;
60: gridView.Columns[sFieldName].SummaryItem.SummaryType = SummaryItemType.Sum;
61: }
62: if (tkType == TKTotalType.TotalType.最小值)
63: {
64: gridView.GroupSummary.Add(SummaryItemType.Max, sFieldName);
65: gridView.Columns[sFieldName].SummaryItem.FieldName = sFieldName;
66: gridView.Columns[sFieldName].SummaryItem.DisplayFormat = TKTotalType.TotalType.最小值;
67: gridView.Columns[sFieldName].SummaryItem.SummaryType = SummaryItemType.Max;
68: }
69: }
70: catch
71: {
72: //MessageBox.Show("表格列名称异常,可能未提供正确的配置文件路径.");
73: }
74: }
75:
76: #endregion