最近这段时间难得空闲,于是打算做个报表功能,主要实现数据的分类汇总,以便不时之需。首先看看效果:

主要是根据工程类型这个字段进行分类,每个分类下对应的项目金额进行求和,当然,你也可以根据实际需求,进行求平均值等。如何做呢?

1.首先新建一个报表文件,在报表设计页面增加ReportHeader,用于显示你的报表名称,打印日期等信息

2.既然是分组,当然要添加分组控件,GroupHeader,用于显示每组的标题

3.增加数据绑定控件,我用的是DataTable

4.增加分组脚页GroupFooter,用于显示每组的汇总值

5.增加报表尾,用于显示报表的制作人等信息

整个设计页面如图:

如何绑定数据呢?

1.在报表控件的构造函数里面增加数据源参数,我用的是DataTable

public TZReport(DataTable dt)
{
InitializeComponent();

}

2.紧接着为报表l绑定数据源 : this.DataSource = dt;

3.为每个数据显示Table的Cell绑定数据源:

this.xrTableCell8.DataBindings.Add("Text", DataSource, "ProjectName");
this.xrTableCell9.DataBindings.Add("Text", DataSource, "ContractMoney");
this.xrTableCell10.DataBindings.Add("Text", DataSource, "ChargeMoney");
this.xrTableCell11.DataBindings.Add("Text", DataSource, "PaidMoney");
this.xrTableCell12.DataBindings.Add("Text", DataSource, "YL");
this.xrTableCell13.DataBindings.Add("Text", DataSource, "SpareMoney");
this.xrTableCell14.DataBindings.Add("Text", DataSource, "CostMoney");

4.增加分组列

GroupHeader1.GroupFields.AddRange(new
DevExpress.XtraReports.UI.GroupField[] { new DevExpress.XtraReports.UI.GroupField("ProjectTypeName", DevExpress.XtraReports.UI.XRColumnSortOrder.Ascending) });

其中  “ProjectTypeName”是你数据源里面的字段

5.为每组的数据统计绑定数据源

xrLabel1.DataBindings.Add("Text", dt, "ContractMoney");
xrLabel2.DataBindings.Add("Text", dt, "ChargeMoney");
xrLabel3.DataBindings.Add("Text", dt, "PaidMoney");
xrLabel4.DataBindings.Add("Text", dt, "SpareMoney");
xrLabel5.DataBindings.Add("Text", dt, "CostMoney");
xrLabel6.DataBindings.Add("Text", dt, "YL");

这样基本就ok了。

PS:如何设置求和等聚合算法,dev提供了设计功能

DEV 第三方控件报表分类汇总的更多相关文章

  1. DEV第三方控件的GalleryControl控件

    1.获取选中的图片 List<GalleryItem> lstArray = gclImage.Gallery.GetCheckedItems(); 2.滚动到GalleryControl ...

  2. ActiveReports 报表应用教程 (13)---嵌入第三方控件

    葡萄城ActiveReports报表与Visual Studio完美集成,给我们带来更为灵活易用的报表定制和自定义控件嵌入支持,除了可以在报表中使用葡萄城ActiveReports报表内置控件外,您还 ...

  3. ASP.NET Dev ASPxGridView控件使用 ASP.NET水晶报表打印

    1.ASPxGridView控件使用 2.ASP.NET水晶报表客户端打印 3.javascript打印 4.ASPxGridView根据Textbox查询 5. ASPxGridView 列宽 1. ...

  4. 【转】WPF - 第三方控件

    WPF - 第三方控件 目前第三方控件在网上形成巨大的共享资源,其中包括收费的也有免费的,有开源的也有不开源的,合理的使用第三方控件将使项目组的工作事半功倍.比如项目中有些复杂的业务逻辑.有些绚丽的效 ...

  5. WPF 第三方控件

    目前第三方控件在网上形成巨大的共享资源,其中包括收费的也有免费的,有开源的也有不开源的,合理的使用第三方控件将使项目组的工作事半功倍.比如项目中有些复杂的业务逻辑.有些绚丽的效果需要有专门的定制控件才 ...

  6. WPF第三方控件盘点

    WPF统一的编程模型.语言和框架,实现了界面设计人员和开发人员工作可以分离的境界,鉴于WPF强大的优势,且一直是开发者关注的地方,下面和大家分享基于WPF项目开发需要用到的第三方控件,包括业界最受好评 ...

  7. Developer Express 第三方控件使用系列方法

    本人目前从事的开发工作主要是以C#语言进行的相关C/S的开发,在工作中也要求使用Developer Express第三方控件所以这一系列的控件使用说明都将以C#语言进行代码说明.平时工作中会慢慢的收集 ...

  8. 好用的第三方控件,Xcode插件(不断更新)

    第三方控件类:   1.提示框 MBProgressHUD: 是一款非常强大的.提供多种样式的提示框.使用起来简单.方便.可以在GitHub上查看具体的使用方法. https://github.com ...

  9. Delphi7 第三方控件1stClass4000的TfcImageBtn按钮控件动态加载jpg图片例子

    Delphi7 第三方控件1stClass4000的TfcImageBtn按钮控件动态加载jpg图片例子 procedure TForm1.Button1Click(Sender: TObject); ...

随机推荐

  1. 小H的硬币游戏

    题目大意: 有n个物品排成一排,每个物品都有自己的价值,你每次可以从中挑选两个距离为k的物品取走,问最大的收益. (如果原来两个物品中间有物品被取走,距离不变) 思路: 贪心. 先按照每个物品的位置m ...

  2. Spring的Bean生命周期理解

    首先,在经历过很多次的面试之后,一直不能很好的叙述关于springbean的生命周期这个概念.今日对于springBean的生命周期进行一个总结. 一.springBean的生命周期: 如下图所示: ...

  3. ajax 同步和异步的区别

    举个例子:普通B/S模式(同步)AJAX技术(异步)同步:提交请求->等待服务器处理->处理完毕返回 这个期间客户端浏览器不能干任何事异步: 请求通过事件触发->服务器处理(这时浏览 ...

  4. Educational Codeforces Round 8 E. Zbazi in Zeydabad 树状数组

    E. Zbazi in Zeydabad 题目连接: http://www.codeforces.com/contest/628/problem/D Description A tourist wan ...

  5. Matlab读取音频数据

    项目需要,读出识别的车牌,对着图片看看是否识别正确. 有了0到9和A到Z,32个省份的音频,但是如何用matlab读出来,老版本有wavread直接读出,然后waveplay读入的即可.但是现在的是a ...

  6. C# base64编码的字符串与图片互转

    protected string ImgToBase64String(string Imagefilename) { try { Bitmap bmp = new Bitmap(Imagefilena ...

  7. tcpreplay工具使用

    参考:http://www.cnblogs.com/jiayy/p/3447047.html   速率控制算法的大体思路就是,通过适当的sleep,增加包发送的时间,从而减小算出来的速率,以达到用户设 ...

  8. MFC绘制棋盘格

    (1)新建立一个MFC空白的基于视类的工程 (2)在View类中重写OnPaint消息 void CMy005View::OnPaint() { CPaintDC dc(this); // devic ...

  9. 解决delphi10.2.3 android tools闪退

    解决delphi10.2.3 android tools闪退 修改D:\Program Files (x86)\Embarcadero\Studio\19.0\PlatformSDKs\android ...

  10. 三分钟教你学Git(十八) - 重写历史

    git filter-branch 同意你使用一个单一命令来大范围地更改历史.所以这个命令要慎用. 1假如你想对全部的commits删除一个文件. git filter-branch --tree-f ...