将内容控制文档合并到其他内容控制文档中,而不会丢失数据



好的,我认为这是一个相对简单的问题,这就是为什么我很惊讶,经过三天的搜索,我无法找到解决方案。

我正在尝试做的是从多个子文档创建一个庞大的docx文档 - 所有这些子文档都有数据输入到各自模板文档的内容控件中。 目前,我正确创建了子文档,并且输入了所有数据。 然后,完成的子文档分别输入到"主"模板文档上的特定内容控件中。 主控文档由子文档正确填充,但是以前在子文档的内容控件中的数据现在已消失。

如何将添加到绑定到内容控件的自定义 XML 部件的数据的文档合并到另一个文档中,而不会丢失该绑定数据?

我使用的是 OpenXML 2 和 C#。

注意:这是使用 altChunk 方法,尽管我也尝试过 DocumentBuilder 并得到了相同的结果。

我认为在合并文档时,CustomXml 部件数据不会反映最终文档中的数据绑定控件。我遇到了类似的问题,我的方法是

  1. 在合并之前查找数据绑定控件
  2. 从自定义 Xml 部件将数据分配给这些控件
  3. 使用 AltChunk 方法和合并

您可以在 OpenXmlHelper 类的方法 AssignContentFromCustomXmlPartForDataboundControl 中找到它。代码可以从Word文档生成器下载

原则上,您只需要将自定义xml部分(及其itemProps相关部分)复制到庞大的docx文档中即可。

从你的帖子来看,听起来altChunk和DocumentBuilder不这样做,但后者的源代码是可用的......

最新更新