如何使用C#中的OpenXML更新所有字段(交叉引用)?
Word中有一个选项“更新字段”。 我想加载Word模板并用一些数据填充FormFields。 还有一些字段是对其他字段的引用 有了Interop,我可以简单地编写“UpdateAllFields”,但OpenXML中的等价物是什么 谢谢:)您想使用更新字段,对吗?下面是一些示例代码:如何使用C#中的OpenXML更新所有字段(交叉引用)?,c#,ms-word,openxml,openxml-sdk,C#,Ms Word,Openxml,Openxml Sdk,Word中有一个选项“更新字段”。 我想加载Word模板并用一些数据填充FormFields。 还有一些字段是对其他字段的引用 有了Interop,我可以简单地编写“UpdateAllFields”,但OpenXML中的等价物是什么 谢谢:)您想使用更新字段,对吗?下面是一些示例代码: using (WordprocessingDocument document = WordprocessingDocument.Open(path, true)) { DocumentSettingsPart
using (WordprocessingDocument document = WordprocessingDocument.Open(path, true))
{
DocumentSettingsPart settingsPart = document.MainDocumentPart.GetPartsOfType<DocumentSettingsPart>().First();
// Create object to update fields on open
UpdateFieldsOnOpen updateFields = new UpdateFieldsOnOpen();
updateFields.Val = new DocumentFormat.OpenXml.OnOffValue(true);
// Insert object into settings part.
settingsPart.Settings.PrependChild<UpdateFieldsOnOpen>(updateFields);
settingsPart.Settings.Save();
}
使用(WordprocessingDocument=WordprocessingDocument.Open(path,true))
{
DocumentSettingsPart settingsPart=document.MainDocumentPart.GetPartSoftType().First();
//创建对象以更新打开时的字段
UpdateFieldsOnOpen updateFields=新的UpdateFieldsOnOpen();
updateFields.Val=newdocumentformat.OpenXml.OnOffValue(true);
//将对象插入到“设置”部分。
setingspart.Settings.PrependChild(updateFields);
settingsPart.Settings.Save();
}
有关更多信息,请参阅以下链接:
您想使用更新字段,对吗?下面是一些示例代码:
using (WordprocessingDocument document = WordprocessingDocument.Open(path, true))
{
DocumentSettingsPart settingsPart = document.MainDocumentPart.GetPartsOfType<DocumentSettingsPart>().First();
// Create object to update fields on open
UpdateFieldsOnOpen updateFields = new UpdateFieldsOnOpen();
updateFields.Val = new DocumentFormat.OpenXml.OnOffValue(true);
// Insert object into settings part.
settingsPart.Settings.PrependChild<UpdateFieldsOnOpen>(updateFields);
settingsPart.Settings.Save();
}
使用(WordprocessingDocument=WordprocessingDocument.Open(path,true))
{
DocumentSettingsPart settingsPart=document.MainDocumentPart.GetPartSoftType().First();
//创建对象以更新打开时的字段
UpdateFieldsOnOpen updateFields=新的UpdateFieldsOnOpen();
updateFields.Val=newdocumentformat.OpenXml.OnOffValue(true);
//将对象插入到“设置”部分。
setingspart.Settings.PrependChild(updateFields);
settingsPart.Settings.Save();
}
有关更多信息,请参阅以下链接:
您是要开放式XML,还是要开放式XML SDK?请注意,有一种方法可以标记文档,以便Word强制进行字段更新并向用户查询(出于安全原因)。但是,在开放XML中工作时,无法直接强制字段更新。字段更新需要Word应用程序(或SharePoint上的Word Automation Services)。我要的是开放式XML SDK。文档标记是如何工作的?这里的贡献是否回答了您的问题?如果是,请单击答案左侧的复选标记,为可能有相同问题的人以及寻找未回答问题的人进行标记。您是要开放式XML还是开放式XML SDK?请注意,有一种方法可以标记文档,以便Word强制进行字段更新并向用户查询(出于安全原因)。但是,在开放XML中工作时,无法直接强制字段更新。字段更新需要Word应用程序(或SharePoint上的Word Automation Services)。我要的是开放式XML SDK。文档标记是如何工作的?这里的贡献是否回答了您的问题?如果是,请单击答案左侧的复选标记,为可能有相同问题的人以及寻找未回答问题的人进行标记。此URL现在为404:-(可能与此相同?此URL现在是404.:(可能与此相同?