ReportViewer动态加载报表文件
来源:互联网 发布:体细胞重编程 编辑:程序博客网 时间:2024/05/15 08:33
webform中一个ReportViewer控件如何动态显示多个rdlc文件,在网上搜索了一些资料都没有找到实现方法。于是自己就在页面中添加多个ReportViewer控件来对应多个rdlc文件,然后根据需要显示和隐藏部分ReportViewer控件。但是这样页面上控件太多代码看起来也有许多多余的地方,在微软Jasson Wang的帮助下找到了一种动态显示rdlc文件的方法。
/**//*页面上放置一个ReportViewer1和两个按钮ButtonBing,ButtonXian点不同的按钮ReportViewer1显示不同的报表文件(Reportxian.rdlc和Reportbing.rdlc)*/
protected void ButtonXian_Click(object sender, EventArgs e)
...{
ControlCollection coll = ReportViewer1.Parent.Controls;
int oldIndex = coll.IndexOf(ReportViewer1);
ReportViewer newViewer = new ReportViewer();
coll.AddAt(oldIndex, newViewer);
coll.Remove(ReportViewer1);
newViewer.LocalReport.DataSources.Clear();
newViewer.LocalReport.ReportPath = MapPath("Reportxian.rdlc");
newViewer.LocalReport.ReportEmbeddedResource = "Reportxian.rdlc";
ReportDataSource rpt = new ReportDataSource("DataSet1_ShowOneFruit", ds.Tables["table"]);
newViewer.LocalReport.DataSources.Add(rpt);
newViewer.LocalReport.Refresh();
}
protected void ButtonBing_Click(object sender, EventArgs e)
...{
ControlCollection coll = ReportViewer1.Parent.Controls;
int oldIndex = coll.IndexOf(ReportViewer1);
ReportViewer newViewer = new ReportViewer();
coll.AddAt(oldIndex, newViewer);
coll.Remove(ReportViewer1);
newViewer.LocalReport.DataSources.Clear();
newViewer.LocalReport.ReportPath = MapPath("Reportbing.rdlc");
newViewer.LocalReport.ReportEmbeddedResource = "Reportbing.rdlc";
ReportDataSource rpt = new ReportDataSource("DataSet1_ShowOneFruit", ds.Tables["table2"]);
newViewer.LocalReport.DataSources.Add(rpt);
newViewer.LocalReport.Refresh();
}
protected void ButtonXian_Click(object sender, EventArgs e)
...{
ControlCollection coll = ReportViewer1.Parent.Controls;
int oldIndex = coll.IndexOf(ReportViewer1);
ReportViewer newViewer = new ReportViewer();
coll.AddAt(oldIndex, newViewer);
coll.Remove(ReportViewer1);
newViewer.LocalReport.DataSources.Clear();
newViewer.LocalReport.ReportPath = MapPath("Reportxian.rdlc");
newViewer.LocalReport.ReportEmbeddedResource = "Reportxian.rdlc";
ReportDataSource rpt = new ReportDataSource("DataSet1_ShowOneFruit", ds.Tables["table"]);
newViewer.LocalReport.DataSources.Add(rpt);
newViewer.LocalReport.Refresh();
}
protected void ButtonBing_Click(object sender, EventArgs e)
...{
ControlCollection coll = ReportViewer1.Parent.Controls;
int oldIndex = coll.IndexOf(ReportViewer1);
ReportViewer newViewer = new ReportViewer();
coll.AddAt(oldIndex, newViewer);
coll.Remove(ReportViewer1);
newViewer.LocalReport.DataSources.Clear();
newViewer.LocalReport.ReportPath = MapPath("Reportbing.rdlc");
newViewer.LocalReport.ReportEmbeddedResource = "Reportbing.rdlc";
ReportDataSource rpt = new ReportDataSource("DataSet1_ShowOneFruit", ds.Tables["table2"]);
newViewer.LocalReport.DataSources.Add(rpt);
newViewer.LocalReport.Refresh();
}
- ReportViewer动态加载报表文件
- ReportViewer加载RDLC文件
- 真正地全动态报表:RDLC+ReportViewer
- ReportViewer动态报表开发完整步骤
- RDLC报表 在WinForm里运行出现 未能加载文件或程序集microsoft.reportviewer.winforms
- RDLC报表 在WinForm里运行出现 未能加载文件或程序集microsoft.reportviewer.winforms
- 一个reportviewer 动态加载不同的report
- reportviewer动态加载报表的实现以及动态控制报表,套打,存折打印模式等的一些探讨,欢迎批评指正!
- Echarts报表动态加载
- Echarts报表动态加载
- ReportViewer报表 详解
- ReportViewer 自定义报表应用
- ReportViewer报表 详解
- ReportViewer 嵌套子报表
- C#报表控件ReportViewer
- VS2010 报表 ReportViewer
- C# ReportViewer报表 详解
- 水晶报表中动态加载报表字段
- 焦油坑-项目失败的表现-zwavelet
- 反编译jad的命令使用
- web标准化设计:常用的CSS命名规则
- 做生意,要这样才行,呵呵
- Kernel Korner - Using DMA
- ReportViewer动态加载报表文件
- DMA in Solaris kernel
- 读取Excel文件时字段类型的问题
- 在网页中实现伸缩式信息提示
- jspSmartUpload上传下载全攻略
- DNN的资源站点
- C++ 中位移运算的本质
- 将编译好的文件做成jar包
- Google犯的低级错误