[英]How to get all merge fields of word document using open xml sdk
I am beginner to open xml sdk. 我是初学者,打开xml sdk。 I am trying to find out all merge fields of document. 我试图找出文档的所有合并字段。
But I am not getting the headers and footers merge fields. 但我没有得到页眉和页脚合并字段。
Can any one suggest a working solution? 任何人都可以提出有效的解决方案吗
I am trying some thing like this - 我正在尝试这样的事情 -
foreach (FieldCode field in docGenerated.MainDocumentPart.RootElement.Descendants<FieldCode>())
{
String fieldText = field.Text;
if (fieldText.StartsWith(" MERGEFIELD"))
{
Int32 endMerge = fieldText.IndexOf("\\");
Int32 fieldNameLength = fieldText.Length - endMerge;
String fieldName = fieldText.Substring(11, endMerge - 11);
fieldName = fieldName.Trim();
}
}
You have to loop through header and footer separately, see the following code: 您必须分别遍历页眉和页脚,请参阅以下代码:
foreach (var header in doc.MainDocumentPart.HeaderParts)
foreach (var cc in header.RootElement.Descendants<FieldCode>())
//DO CODE
foreach (var footer in doc.MainDocumentPart.FooterParts)
foreach (var cc in footer.RootElement.Descendants<FieldCode>())
//DO CODE
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.