2011-02-23 124 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