如何使用Winforms或WPF构建表单完成/文档合并应用程序?

3
我需要建立一个应用程序,接受用户输入的数据(如姓名、地址、金额等),然后将其与预加载的文档模板(订单表格)合并,最后打印出这个合并后的文档。我可以使用Windows Forms或WPF来完成这个项目。
有什么好的建议吗?我在Winforms开发方面经验丰富,但不知道如何处理将数据合并到文档中以进行打印。
2个回答

3

WPF非常适合此类操作。

您可以从WPF UI元素(例如Page或UserControl)创建文档模板。像在VS设计器中设置任何UI一样设置模板。确定数据的存储形式(这将是您的DataContext),然后针对其公共属性进行绑定。然后,您可以将合并的模板拖放到FixedPage中,并将其添加到XPS文档中。您可以很容易地打印它或将其保存到磁盘上。

简化算法:

  • 创建数据输入表单。
  • 创建一个可保存来自表单数据的类型(称此类型为Foo)
  • 创建一个页面模板,该模板绑定到Foo(当Foo实例是DataContext时)
  • 将表单绑定到Foo的一个实例
  • 让用户填写表单(从而填写Foo的实例)
  • 创建模板的实例(假设它是一个Page)
  • 设置Page.DataContext = fooInstance;
  • 将Page添加到FixedPage中,然后将其添加到Fixed Document中
  • 将FixedDocument保存到XPS文档中
  • 保存XPS文档或将其发送到PrintQueue

我正在做类似于此的事情,效果很好。只需转到我的个人资料并阅读所有问题。它们涵盖了整个过程的大部分难点。


0

你需要使用邮件合并功能。邮件合并是一种将来自数据库、电子表格或其他形式的结构化数据插入到信函、邮寄标签和姓名标签等文档中的方法。请从本文开始。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接