簡體   English   中英

如何在不參考數據庫的情況下在WPF MVVM應用程序中創建報表

[英]How do I create a report in a WPF MVVM application without refering to a database

我正在嘗試在我的WPF應用程序中創建一個報告。 我正在使用Visual Studio 2010,C#和MVVM

我已經研究了很多,並且只在網上找到了使用數據庫處理Crystal Report的文章。 在我的應用程序中,我不直接與數據庫通信。 我們使用網絡服務。 它與數據庫通信並將所有數據寫入xml文件。 我們通過存儲過程獲取信息。 希望這不是問題。

無論如何,在我的一個用戶控件上,我有一個數據網格,其中填充了數據庫中的數據。 我使用List和Observable Collection存儲這些數據。 因此,檢索數據很容易。 但我現在想將數據導出到報告中供用戶打印。

正如我所說,我已閱讀報告,他們都使用某種形式的數據集或數據表。 但正如我所說,我們不直接使用數據庫。

我已經下載了SAP Crystal Studio,Microsoft Visual Studio的開發人員版本:更新和運行時下載 ,以確保我可以使用Crystal Reports。

我有一個想法,我必須創建一個新的用戶控件或窗口視圖,並通過ViewModel設置datacontext。 在此表單上應該是一個將填充的報表查看器控件。 但我不知道要通過什么,如果我可以做這樣的事情。 我可以將具有我想要保存的數據的List / ObservableCollection發送到表單,並將其綁定到報表控件嗎? 使用[this]作為示例2 ,這是我正在尋找的方向

或者是否有另一種不使用數據庫創建報告的方法? 我通常只想在現有的WPF項目中創建一個報告。 打開一個新窗口或用戶控件,並在此處加載報表查看器,其中包含我在gridview中的數據。 使用WPF和MVVM,我該如何實現。

如果有人知道如何使用它,我也有組件一。 該網站本身並未提供有關其報告視圖主題的精彩教程。

如果您還需要我的其他信息,請告訴我,我會盡我所能進行編輯

剛開始看這個,首先你可以根據你的EF上下文或你的web服務添加一個DataSource。 然后,您可以使用內置報告工具集(基於SQL Server報告服務(盡管您不需要它來托管它們))。

雖然您需要使用Windows窗體主機控件:( 關於在WPF中托管報告的MSDN演練

通過創建使用數據網格的用戶控件,我認為您處於正確的軌道上。 我認為接下來要打印某種報告的是DocumentPaginator 使用此方法,您可以打印到.XPS文件,將用戶控件權限打印到紙張,或/和使用第三方XPS到PDF轉換器。

是一個讓你入門的例子!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM