HeaderFooterCollection

HeaderFooterCollection class

Предоставляет типизированный доступ кHeaderFooter узлыSection .

Чтобы узнать больше, посетитеРабота с верхними и нижними колонтитулами документальная статья.

public class HeaderFooterCollection : NodeCollection

Характеристики

ИмяОписание
Count { get; }Получает количество узлов в коллекции.
Item { get; }ИзвлекаетHeaderFooter по данному индексу. (3 indexers)

Методы

ИмяОписание
Add(Node)Добавляет узел в конец коллекции.
Clear()Удаляет все узлы из этой коллекции и из документа.
Contains(Node)Определяет, находится ли узел в коллекции.
GetEnumerator()Обеспечивает простую итерацию в стиле «foreach» по коллекции узлов.
IndexOf(Node)Возвращает индекс указанного узла, отсчитываемый от нуля.
Insert(int, Node)Вставляет узел в коллекцию по указанному индексу.
LinkToPrevious(bool)Связывает или отменяет связь всех верхних и нижних колонтитулов с соответствующими верхними и нижними колонтитулами в предыдущем разделе.
LinkToPrevious(HeaderFooterType, bool)Связывает или отменяет связь указанного верхнего или нижнего колонтитула с соответствующим верхним или нижним колонтитулом в предыдущем разделе.
Remove(Node)Удаляет узел из коллекции и из документа.
RemoveAt(int)Удаляет узел с указанным индексом из коллекции и из документа.
ToArray()Копирует всеЗаголовокНижний колонтитул s из коллекции в новый массивЗаголовокНижний колонтитул с. (2 methods)

Примечания

Может быть максимум одинHeaderFooter

каждогоHeaderFooterType per Section .

HeaderFooter Объекты могут располагаться в коллекции в любом порядке.

Примеры

Показывает, как удалить все нижние колонтитулы из документа.

Document doc = new Document(MyDir + "Header and footer types.docx");

// Проходим по каждому разделу и удаляем нижние колонтитулы всех видов.
foreach (Section section in doc.OfType<Section>())
{
    // Существует три типа нижних и верхних колонтитулов.
    // 1 — «Первый» верхний/нижний колонтитул, который отображается только на первой странице раздела.
    HeaderFooter footer = section.HeadersFooters[HeaderFooterType.FooterFirst];
    footer?.Remove();

    // 2 — «Основной» верхний/нижний колонтитул, который отображается на нечетных страницах.
    footer = section.HeadersFooters[HeaderFooterType.FooterPrimary];
    footer?.Remove();

     // 3 - «Четный» верхний/нижний колонтитул, который отображается на четных страницах.
    footer = section.HeadersFooters[HeaderFooterType.FooterEven];
    footer?.Remove();

    Assert.AreEqual(0, section.HeadersFooters.Count(hf => !((HeaderFooter)hf).IsHeader));
}

doc.Save(ArtifactsDir + "HeaderFooter.RemoveFooters.docx");

Показывает, как создать верхний и нижний колонтитул.

Document doc = new Document();

// Создаем заголовок и добавляем к нему абзац. Текст в этом абзаце
// будет отображаться в верхней части каждой страницы этого раздела, над основным текстом.
HeaderFooter header = new HeaderFooter(doc, HeaderFooterType.HeaderPrimary);
doc.FirstSection.HeadersFooters.Add(header);

Paragraph para = header.AppendParagraph("My header.");

Assert.True(header.IsHeader);
Assert.True(para.IsEndOfHeaderFooter);

// Создаем нижний колонтитул и добавляем к нему абзац. Текст в этом абзаце
// будет отображаться внизу каждой страницы этого раздела, под основным текстом.
HeaderFooter footer = new HeaderFooter(doc, HeaderFooterType.FooterPrimary);
doc.FirstSection.HeadersFooters.Add(footer);

para = footer.AppendParagraph("My footer.");

Assert.False(footer.IsHeader);
Assert.True(para.IsEndOfHeaderFooter);

Assert.AreEqual(footer, para.ParentStory);
Assert.AreEqual(footer.ParentSection, para.ParentSection);
Assert.AreEqual(footer.ParentSection, header.ParentSection);

doc.Save(ArtifactsDir + "HeaderFooter.Create.docx");

Смотрите также