繁体   English   中英

使用DocumentFormat.OpenXml(C#)更新.docx文档中的目录

[英]Update TOC in .docx document using DocumentFormat.OpenXml (C#)

我使用DocumentFormat.OpenXml创建新的Word文档。 我加载的模板文档位于目录和带有图片徽标的表中。 我为此模板使用c#代码附加了其他内容。 我将此文件发送给用户。

当用户获取此文档并打开它时-目录不会更新。 我发现解决了这个问题。 我添加到我的代码

  • mainPart.DocumentSettingsPart.Settings.Append(new UpdateFieldsOnOpen(){Val = true});

但是,当用户获取并打开文档时,他会从MS Word中收到消息“您要更新字段吗?”。

有没有其他方法可以生成目录或更新目录,而无需向用户发送任何消息?

我得到了我的问题的答案: http : //social.msdn.microsoft.com/Forums/en-US/worddev/thread/7f53a939-f50e-423d-90fa-1f3c58945a6e

您所看到的原因是几年前引入的一种安全措施。 可能,您可以通过使用下面的知识库文章中描述的注册表项来禁止显示该消息。 但是,您需要知道,这可能会降低系统安全性。

下面的博客文章介绍了更新目录的“正确”方法: http : //support.microsoft.com/kb/330079

除此之外,唯一可用的是嵌入在文档或使用自动化来强制字段更新的插件中的宏。

我们已经在类似的话题中进行了很长的讨论,有关如何借助OpneXML SDK 2.0生成目录(TOC)。 并且有详细的解决方案说明了如何实现。 查看此线程以了解详细信息: 如何使用OpenXML SDK 2.0生成目录?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM