我在使用wpf讓reportviewer運行出現嚴重問題,我在谷歌上發現的大多數信息都是相同的教程拷貝&粘貼或購買英鎊2k包的建議,這兩者都不能幫助我。reportviewer在WPF中使用rdlc
我沒有錯誤,沒有任何消息不算什麼,但報告顯示,沒有數據的空白。然而,我可以在調試器中看到數據存在。我有以下代碼:
private void reportViewer_Load(object sender, EventArgs e)
{
if (!_isReportViewLoaded)
{
Microsoft.Reporting.WinForms.ReportDataSource reportDataSource = new Microsoft.Reporting.WinForms.ReportDataSource();
PackingListManager pManager = (PackingListManager)IoC.Get<IManager<PackingItem>>();
reportDataSource.Name = "PackingListDataset";
reportDataSource.Value = pManager.PackingItemList;
this._reportViewer.LocalReport.DataSources.Add(reportDataSource);
this._reportViewer.LocalReport.ReportEmbeddedResource = "ShippingClient.Report1.rdlc";
//_reportViewer.Refresh();
_isReportViewLoaded = true;
_reportViewer.Refresh();
}
數據集的名稱是什麼在報表中設置正確,pManager.PackingItemList
是IEnumerable
集,在這種情況下ObservableCollection
,數據加載和事件拾取並在數據加載時刷新報告視圖,我也有一個按鈕,當按下時運行刷新,但無論如何,我嘗試報告總是顯示爲沒有數據。
我敢肯定,我在這裏失去了一些東西,但谷歌搜索結果與來自控制軟件包,如Telerik的和ComponentOne的這是遠遠昂貴的考慮網頁淹沒。
所有這一切都正在做,只是這樣我就可以打印多個頁面維護組一個DataGrid一些東西,我希望是相當標準,但原來是瘋狂的複雜的事情。
編輯:
也只是要注意,中的ReportViewer似乎借鑑,但其本身缺少報告,沒有頭,沒有數據什麼都沒有,所有的控件被禁用,即使壽我可以清楚地看到本地報告的數據源有49個值,我完全被難住了。
我想你的解決方案,並在一開始並沒有區別,但我注意到,有一個名爲「refreshReport」使用其他功能加載的數據解決了我的問題後,不知道爲什麼我從來沒有見過該功能之前發佈。 – Ben
@ user1412240,所以這個DID爲你工作:) ..它暴露你看到其他功能:)有時開始一條新路徑打開你的眼睛,否則你認爲你已經知道的事情......它仍然發生在我身上次也。 – DRapp