如何解决使用 OpenXML 在 MS Word 中添加/更新目录时出现问题
我需要使用 OpenXML 添加/更新 TOC - MS 文档中的目录。我正面临着实现同样目标的挑战。我使用的是 MS Office 2016。
我已经尝试了这篇文章中的所有选项: How to generate Table Of Contents using OpenXML SDK 2.0?
还通过了 Eric White videos。
我正在尝试使用 UpdateField 选项并能够按照上述链接中的示例代码添加空目录。
但是,当我打开文档时,我没有收到一个要求更新 TOC 的弹出对话框。
这是示例代码:
var sdtBlock = new SdtBlock();
sdtBlock.InnerXml = GetTOC(); //TOC Xml
document.MainDocumentPart.Document.Body.AppendChild(sdtBlock);
DocumentFormat.OpenXml.Wordprocessing.SimpleField f;
f = new SimpleField();
f.Instruction = "sdtContent";
f.Dirty = true;
document.MainDocumentPart.Document.Body.Append(f);
var setting = document.MainDocumentPart.DocumentSettingsPart;
if (setting != null)
{
document.MainDocumentPart.DocumentSettingsPart.Settings.Append(new UpdateFieldsOnopen() { Val = new DocumentFormat.OpenXml.OnOffValue(true)});
document.MainDocumentPart.DocumentSettingsPart.Settings.Save();
}
是否是由于 MS Office 2016? UpdateField 弹出窗口不会出现?
我不想使用以下选项:
如果有更好的选择来创建/更新目录,请告诉我。
您的回答/评论真的很有帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。