如何为不同的RDLC/报表使用一个报表查看器



我想对所有rdlc文件使用一个reportviewer控件。所有rdlc报告都有一些常见和不常见的参数或搜索条件。

有人知道我怎样才能做到这一点吗?我不希望对不同的报表使用不同的报表查看器控件。

感谢

您可以在运行时设置ReportViewer控件的各个方面。

设置正确的rdlc文件:

YourReportViewerControl.LocalReport.ReportPath = <path to your rdlc file>

在运行时添加参数:

Dim parA As New ReportParameter("parA", "this is A")
Dim parB As New ReportParameter("parB", "this is B")
YourReportViewerControl.LocalReport.SetParameters(New ReportParameter() {parA, parB})

要在运行时添加数据源:

YourReportViewerControl.LocalReport.DataSources.Add(New ReportDataSource("yourDataSourceName", YourDataSource))

因此,您只能为发送到ReportViewer的rdlc设置正确的参数/数据集。

下面的代码可以用于在单个报表查看器中使用多个rdlc文件。

//添加此代码以在运行时嵌入报表

reportViewer1.Reset();
reportViewer1.LocalReport.ReportEmbeddedResource = "ReportViewer.Report2.rdlc";
this.reportViewer1.RefreshReport();

//reportViewer1->Report Viewer控件

//ReportViewer-->解决方案的名称

//Report2.rdlc-->报告的名称

try this 
ReportViewer1.LocalReport.ReportPath = @"Yourreportpath.rdlc";
ReportViewer1.LocalReport.DataSources[x] = "datasourceID";
ReportViewer1.LocalReport.Refresh(); 
in Asp.net
for windows form
ReportViewer1.LocalReport.ReportPath = @"Yourreportpath.rdlc";
ReportViewer1.LocalReport.DataSources[x] = "datasourceID";
ReportViewer1.RefreshReport(); 

最新更新