【问题标题】:How to generate word document with a datasource?如何使用数据源生成word文档?
【发布时间】:2015-09-16 00:09:48
【问题描述】:

我想用运行时数据源(对象实例)填充 Word 文档模板。我阅读了很多关于 Word Schema、XML、XSD 等的内容,但一切仍然很模糊,很难理解不同的术语。

我关注了this,但我不知道从哪里获得要添加到 word 文档或模式库的单词模式。

在 Visual Studio 2010 中,我还通过将数据源(对象)拖放到 create the content controls 来完成文档级项目的步骤,但我不知道之后该做什么。如何在运行时将 word 文档与绑定的对象数据一起使用并打开 word 文档的实例进行编辑/打印?

【问题讨论】:

    标签: c# xsd ms-word vsto


    【解决方案1】:

    谢天谢地,Cathal Coffey 的开源 DocX 解决了这两个问题 很好,与 Interop 不同的是,它提供了一个易于使用、高度 用于执行无数操作/提取的可发现 API 针对 Word 文档格式(.docx 格式,自 字 2007)。最重要的是,DocX 不需要那个 Word 或任何其他 Office 依赖项安装在客户端计算机上!完整的 源代码可从 Coffey 的 Codeplex repo 获得,或者您可以添加 DocX 使用 Nuget 到您的项目。

    来源:Writing to Word Doc

    【讨论】:

    • 好像不处理内容控件?
    【解决方案2】:

    内容控件仅支持与custom xml part 绑定。

    所以首先将您的 XML 添加为文档的 customxml 部分。

    Office.CustomXMLPart employeeXMLPart = this.CustomXMLParts.Add(xmlData);//xmlData is xml string
    

    然后将内容控件与xpath绑定

    string xPathName = "ns:employees/ns:employee/ns:name";
        this.plainTextContentControl1.XMLMapping.SetMapping(xPathName,
            prefix, employeeXMLPart);
    

    Here is the reference article from MSDN

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-17
      • 2020-10-03
      • 2017-01-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多