ReportViewer部分使用总结
最近winform上使用ReportViewer做报表,因为之前没弄过,所以遇到了很多问题,现在总结一下。
一、运行环境
.net环境:4.0
开发工具:vs2010
二、开发步骤
第一步,在winform窗体上添加ReportViewer控件作为呈现报表的容器,重新命名为reportViewerTest;
第二步,利用向导添加MyTestReport.rdlc报表文件;
第三步,利用向导添加数据集Test.xsd,数据集用来存放报表需要呈现的数据源的格式,在数据集中添加一个用来测试的Student表;

第四步,设计MyTestReport报表文件,这里方便测试,只添加一个列表来显示student信息。在添加列表的时候需要绑定在上一步添加的student表,报表绑定的数据源信息可以在【报表数据】里查看。【报表数据】可在【视图】中打开。




第五步,在winform页面中为reportViewerTest的属性中指定该报表,或者动态为reportViewerTest指定报表文件,如
reportViewerTest.LocalReport.ReportEmbeddedResource="报表文件";// 包含命名空间和报表文件名称 如 Test.ReportManage.MyTestReport.rdlc
动态创建一个datatable,表结构和数据源文件中的student表相同,如
DataTable studentDt=new DataTable("Student");
studentDt.Columns.Add("ID");
studentDt.Columns.Add("Name");
studentDt.Columns.Add("Age");
studentDt.Columns.Add("Sex");
为studentDt赋值:
studentDt.Rows.Add("10001", "Jack", 12, "男");
studentDt.Rows.Add("10002", "Lucy", 11, "女");
studentDt.Rows.Add("10003", "Jason", 15, "男");
studentDt.Rows.Add("10004", "Lili", 13, "女");
将数据表加入报表:
reportViewerTest.LocalReport.DataSources.Add(new ReportDataSource("Student",studentDt));//注:这里数据源名称要与上面再报表中定义的数据源名称一致。
第六步,刷新报表控件。
reportViewerTest.RefreshReport();

最后,如果报表中有跳转链接,既报表间跳转,需要实现报表控件的Drillthrough事件,报表的相关初始化工作在该事件的方法中实现。
ReportViewer部分使用总结的更多相关文章
- 【三石视频教程】当FineUIPro遇到ReportViewer
FineUIPro 下个版本(v2.8.0)即将支持 ReportViewer,为此三石特别制作了一期视频教程,供大家参考. 运行效果图: 视频下载:http://pan.baidu.com/s/ ...
- Could not load file or assembly 'Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its de
页面加载时出现这个错误: Could not load file or assembly 'Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Cul ...
- 未能加载文件或程序集“Microsoft.ReportViewer.WinForms 解决办法
异常信息: 未能加载文件或程序集“Microsoft.ReportViewer.WinForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken= ...
- winform 使用 ReportViewer做报表
之前用过的水晶报表觉得有些麻烦,因此尝试了使用微软自带的报表. 第一种方法是 在winform界面上放置ReportViewer界面,相关的代码如下: public DataTable dt; pri ...
- ReportViewer内存泄漏问题解决方案[上]
做这个项目有点倒霉,快要验收的时候,发现微软ReportViewer控件的一个bug,导致我们的项目无法正常验收. 问题描叙:用ReportViewer本地模式做的报表,在ASP.NET页面中呈现.在 ...
- 升级到VS2012,reportViewer无法使用
最近公司的开发环境升级到VS2012,为了电脑能够快点,我重装系统,只装VS2012没有装VS2010.这个时候问题来了,原本用VS2010开发的项目用VS2012编译能通过,运行时包下图错: 为了解 ...
- ReportViewer 不预览,直接导出 PDF文件
作为笔记记着,以免以后再到处找资料 1. 在不预览的情况下导出文件 先看一个方法说明,想知道ReportViewer支持导出哪些文件类型,在Render方法说明中就有描述 // // Summary: ...
- WPF中使用ReportViewer报表
本篇博客将介绍如何在WPF中使用ReportViewer控件. 1. 环境准备:下载安装最新版ReportViewer(PS:需要安装Microsoft SQL Server System CLR T ...
- RDLC的部署(无法找到Microsoft.ReportViewer.ProcessingObjectModel.dll文件)
CMD命令:C:\Windows\assembly\GAC_MSIL\ rdlc 相比微软的其他产品来说,做得还真是够烂的了,比水晶报表也烂得多. 但不知为何我还是宁可先择 rdlc.并且渐渐上手了. ...
- ReportViewer报表
个人感觉ReportViewer>DataGridView>listView 打开一个空的winform窗体程序,工具栏报表拖入 ReportViewer 在空的Form1中 在同一命名空 ...
随机推荐
- Elasticsearch优化
2.out of memory错误 因为默认情况下es对字段数据缓存(Field Data Cache)大小是无限制的,查询时会把字段值放到内存,特别是facet查询,对内存要求非常高,它会把结果都放 ...
- 开源组件 Mark
http://www.cnblogs.com/asxinyu/category/661170.html
- Java基础语法(方法)
Java基础语法 今日内容介绍 u 方法 第1章 方法 1.1 方法概述 在我们的日常生活中,方法可以理解为要做某件事情,而采取的解决办法. 如:小明同学在路边准备坐车来学校学习.这就面临着一件事情( ...
- dao层写展示自己需要注意的问题
写dao层时一定要把 News news=new News(); 写在while循环内,是每循环一次,new出一个对象
- Seven Deadly Sins: Gluttony, Greed, Sloth, Wrath, Pride, Lust, and Envy.
Seven Deadly Sins: Gluttony, Greed, Sloth, Wrath, Pride, Lust, and Envy.七宗罪:暴食.贪婪.懒惰.暴怒.傲慢.色欲.妒忌.
- 两个页面实现mui轮播图与选项卡结合
index.html页面 <!DOCTYPE html><html><head> <meta charset="utf-8"> &l ...
- static 关键字用法
static a=0; 就是把a初始化为0:初始值为0而已 即使a是局部变量,每次进入此变量所在的函数,a值还是保持上次赋值: 在中断里建议在局部变量前加上static,以确保此变量值的寿命
- c++中三种继承方式的区别
public公有继承 protected保护继承 private私有继承 我们知道类的private和protected成员,在类外是不可以使用的.只有public成员可以在类外直接使用. 公有继承时 ...
- Eucalyptus——EC2的开源实现(转载)
Eucalyptus[22]是加利福尼亚大学的 Daniel Nurmi 等人实现的,是一个用于实现云计算的开源软件基础设施.Eucalyptus 是 Amazon EC2 的一个开源实现,它与 EC ...
- u-boot剖析(一)----Makefile分析
由于u-boot比较庞大,所以我们分开来分析,对于一个大型的项目我们想快速的了解其代码架构和内容,最方便的方法就是分析Makefile,所以我们今天以三星的s3c2440来分析Makefile.我们今 ...