获取所有页面的页眉数据

doc.LastSection.HeadersFooters[HeaderFooterType.HeaderPrimary].GetChildNodes(NodeType.Run, true)
doc.FirstSection.HeadersFooters[HeaderFooterType.HeaderPrimary].GetChildNodes(NodeType.Run, true)
这两个方法只能获取第一页或者最后一页的页眉数据,如何获取word文档中所有页面的页眉数据

@Huy20

请注意,Word文档包含一个或多个节。 节可以有一个Body,每个HeaderFooterType最多可以有一个HeaderFooter。 Body和HeaderFooter节点可以在Section中以任何顺序排列。

您可以使用Section.HeadersFooters属性获取该节的页眉和页脚节点。 请检查HeaderFooterType的详细信息。

下面的代码示例演示如何遍历文档的所有节和页眉页脚。

Document doc = new Document(MyDir + "in.docx");

foreach (Section section in doc.Sections)
{
    foreach (HeaderFooter headerFooter in section.HeadersFooters)
    {
        foreach (Run run in headerFooter.GetChildNodes(NodeType.Run, true))
        {
            Console.WriteLine(run.Text);
        }
    }
}