2011-02-23 121 views
0

我想生成發票並在後臺打印(沒有顯示到應用程序的用戶),一旦收銀員收到的現金從客戶。生成並打印發票

我不知道該怎麼做,在WPF中,我試圖創建一個用戶控制和傳遞需要的對象,並將其綁定到DataGrid控件到這個用戶控制和打印。

有人建議使用水晶報表,並通過隨後的參數生成發票並打印出來,但我不知道該怎麼做,在技術上。

在此先感謝

回答

5

在WPF中你有很多的可能性:通過XPS

  • 印刷,看here以獲取更多信息。它非常靈活和強大,但也有點複雜。 Here你會發現一個簡短的例子。
  • 創建一個FlowDocument並打印出來。這種方式更簡單,有很多功能,並且還可以提供良好的打印質量。但它有一個特定的目標:支持流動的文檔。因爲格式限制,它並不總是最好的選擇。
  • 一個非常簡單的可能性使用PrintDialog.PrintVisual。藉助此功能,您可以快速打印出視覺內容。這對於一個簡單的解決方案很好,但是非常有限。使用Microsoft Report Viewer等報告工具。你也可以從WPF中使用它,它是非常強大和免費的。保重,有很多不同的版本。我會用最新的(V3)。這是VS2010有一個集成設計器的版本。

所有這些方法可以用來打印出沒有直接的用戶交互。

你有寫:我不知道如何做到這一點在WPF中,我試圖創建一個用戶控件,並傳遞所需的對象,並將其綁定到DataGrid控件到此用戶控件並打印出來。。要了解結果如何變化,請使用PrintDialog.PrintVisual-方法,看起來您還有所需,然後您會看到它是否符合您的需求。否則,請選擇其他技術之一。

爲了創建漂亮的格式化打印的文檔,我建議使用報告的技術,因爲它們提供的靈活性。你也可以在XPS中做到這一點,但總的來說,這是更多的工作(佈局變得越複雜),也不太受支持。但是,這也是爲了將報告技術學習和嵌入到您的應用程序中而做出的努力。

+0

我不認爲PrintVisual總是有限的。對我來說,打印收據和發票是最簡單的方法。 – GorillaApe 2012-11-29 01:54:21