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

我需要构建一个接受用户输入数据(例如名称,地址,金额等)的应用程序,然后将其与预加载的文档模板(订购单)合并,然后打印此合并的文档.我可以为此项目使用Windows窗体或WPF.

关于如何最好地解决这个问题的任何建议?我在Winforms开发方面经验丰富,但对如何将数据合并到文档中进行打印一无所知.

解决方法:

WPF为此非常有用.

您可以从WPF UI元素(例如Page或UserControl)创建文档模板.像在VS设计器中设置任何UI一样设置模板.确定您的数据将以什么形状存储(这将是您的DataContext),然后根据其公共属性进行绑定.然后,您可以将合并的模板拖放到FixedPage中,然后将其添加到XPS文档中.您可以非常轻松地打印该文件或将其保存到磁盘.

简化算法:

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

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

上一篇:c#-MVP被动视图-将视图数据和模型数据分开


下一篇:CodeGo.net> C#-MailMessage的问题/混乱