2008-10-02 51 views
12

如何從嵌入式資源動態加載新報告?我創建了一個包含報告作爲嵌入式資源的報告項目。我加了第二份報告文件,並使用下面的代碼來切換報告:使用Microsoft.Reporting.WinForms動態加載嵌入式資源報告

this.reportViewer1.LocalReport.ReportEmbeddedResource = "ReportsApplication2.Report2.rdlc"; 
this.reportViewer1.LocalReport.Refresh(); 
this.reportViewer1.RefreshReport(); 

當此代碼執行時,原始報表保留在報表查看器中可見。

我也使用

LocalReport.LoadReportDefinition 

嘗試,但有同樣的結果。

回答

9

答案是:你必須調用

<ReportViewer>.Reset(); 

改變ReportEmbeddedResource的值或調用LoadReportDefinition之前。

後你這樣做,你也有叫

<ReportViewer>.LocalReport.DataSources.Add(...); 

重新建立數據源。

+0

只是想添加一條評論,說你可以遇到參數未定義的錯誤,除非你也這樣做`Reset`。 – test 2017-02-09 18:44:58