ReportViewer和 rdlc报表使用小记
2012-12-22 19:23
495 查看
最近使用rdlc报表,由于之前没用过,所以遇到了不少小坎坷,固特别记录下以方便日后自己回顾和后来人。
刚开始用的时候觉得这个东西特别扭,后来发现琢磨一些时间后发现它其实挺不错的,支持的表格形式也很多,不过我只用过表和拆线表,下面会介绍一下这两个表的基本用法,如有不是之处,还请赐教。
一、简介
ReportViewer和 rdlcr报表结合使用大致方式如下:
1、在窗体中拖放一个ReportViewer控件。
2、在程序中添加一个rdlc报表。
3、为报表添加报表项并绑定数据源。
4、使用ReportViewer加载rdlc报表添加数据,设置显示格式。
前两个没什么好说的。第4步也比较容易,网上有一些介绍。第3步是最不好做的(至少笔者在初次接触时候受挫最多是在这一步上)。所以下面从第三步开始介绍。
二、详细介绍
1、为报表添加报表项之表格
(1)新建报表之后应该是如下的样子
View Code
4、结果,如下
到此,整个报表完成。
虽然是完成了,但是上面的报表可以大家会发现一些问题。比如表中的数据ID项有重复的,但在实际应用中这样的数据是不友好的,至于要怎样完善报表请看下回。
刚开始用的时候觉得这个东西特别扭,后来发现琢磨一些时间后发现它其实挺不错的,支持的表格形式也很多,不过我只用过表和拆线表,下面会介绍一下这两个表的基本用法,如有不是之处,还请赐教。
一、简介
ReportViewer和 rdlcr报表结合使用大致方式如下:
1、在窗体中拖放一个ReportViewer控件。
2、在程序中添加一个rdlc报表。
3、为报表添加报表项并绑定数据源。
4、使用ReportViewer加载rdlc报表添加数据,设置显示格式。
前两个没什么好说的。第4步也比较容易,网上有一些介绍。第3步是最不好做的(至少笔者在初次接触时候受挫最多是在这一步上)。所以下面从第三步开始介绍。
二、详细介绍
1、为报表添加报表项之表格
(1)新建报表之后应该是如下的样子
View Code
private void Form1_Load(object sender, EventArgs e) { this.rptTestTable.RefreshReport(); //////////////////////////// //声明一个数据集合用以定义报表数据源 //报表支持的数据集合应该有很多种,不这笔者只用过ArrayList System.Collections.ArrayList listTable = new System.Collections.ArrayList(); //这里选择为list添加一些数据 Random random = new Random(); for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { DataModel model = new DataModel(); model.ID = (i + 1).ToString(); model.DataValue = random.Next(1, 200).ToString(); model.Time = DateTime.Now.AddHours(j).ToShortTimeString(); listTable.Add(model); } } //下面是重点部分:绑定表数据 //这下这个的命名空间Microsoft.Reporting.WinForms. //定义数据源,这里用到前说的数据集名字“dsTest”,这个名字比须和报表时添加的一样 ReportDataSource sourceTable = new ReportDataSource("dsTest", listTable); this.rptTestTable.Clear(); //清空ReportView的 this.rptTestTable.LocalReport.ReportPath = @"..\..\rptTestTable.rdlc"; //设置报表路径 this.rptTestTable.LocalReport.DataSources.Add(sourceTable); //添加数据源 this.rptTestTable.SetDisplayMode(DisplayMode.PrintLayout); //设置显示方式 this.rptTestTable.ZoomMode = ZoomMode.PageWidth; //设置报表的绽放方式 this.rptTestTable.RefreshReport(); //刷新报表 //至此运行程序就可以看到结果了 //下面绑定图表数据和中上是基本一样 ReportDataSource sourceCurve = new ReportDataSource("dsCurve", listTable); this.rptTestCurve.Clear(); this.rptTestCurve.LocalReport.ReportPath = @"..\..\rptTestCurve.rdlc"; this.rptTestCurve.LocalReport.DataSources.Add(sourceCurve); this.rptTestCurve.SetDisplayMode(DisplayMode.PrintLayout); this.rptTestCurve.ZoomMode = ZoomMode.PageWidth; this.rptTestCurve.RefreshReport(); //至此运行程序就可以看到结果了 }
4、结果,如下
到此,整个报表完成。
虽然是完成了,但是上面的报表可以大家会发现一些问题。比如表中的数据ID项有重复的,但在实际应用中这样的数据是不友好的,至于要怎样完善报表请看下回。
相关文章推荐
- VS2012中的ReportViewer和rdlc报表的使用实例---机房收费系统
- 使用VS自带的报表RDLC结合报表控件ReportViewer使用
- 使用ASP.NET2.0的ReportViewer查看RDLC报表
- winform中使用ReportViewer的时候,找不到报表数据面板.
- 报表ReportViewer显示图片--rdlc
- RDLC(Reportview)报表直接打印,支持所有浏览器,客户可在linux下浏览使用
- C#报表控件ReportViewer rdlc 例(4)
- winform中使用ReportViewer的时候,找不到报表数据面板.
- rdlc reportviewer vs2010报表 实现导出和web页面显示每页都带表头
- 报表ReportViewer显示图片--rdlc
- 【.Net码农】RDLC(Reportview)报表直接打印,支持所有浏览器,客户可在linux下浏览使用
- VS2017 处理 Rdlc , microsoft report viewer 轻量级报表处理(WPF CS客户端版本)
- 报表ReportViewer显示图片--rdlc
- ASP.NET服务器控件使用之Reportviewer 报表
- rdlc reportviewer vs2010报表 实现导出和web页面显示每页都带表头
- 使用“ReportViewer 控件 (Visual Studio)”,抛弃水晶报表(crystal report)
- C#报表控件ReportViewer rdlc 例(1) .
- ReportViewer,RDLC 报表开发之个性化样式
- 报表ReportViewer显示图片--rdlc
- 报表ReportViewer绑定图片--rdlc