HeaderFooterCollection

HeaderFooterCollection class

Ger maskinskriven åtkomst tillHeaderFooter noder av enSection .

För att lära dig mer, besökArbeta med sidhuvuden och sidfötter dokumentationsartikel.

public class HeaderFooterCollection : NodeCollection

Egenskaper

namnBeskrivning
Count { get; }Hämtar antalet noder i samlingen.
Item { get; }Hämtar enHeaderFooter vid det givna indexet. (3 indexers)

Metoder

namnBeskrivning
Add(Node)Lägger till en nod i slutet av samlingen.
Clear()Tar bort alla noder från den här samlingen och från dokumentet.
Contains(Node)Bestämmer om en nod finns i samlingen.
GetEnumerator()Ger en enkel “foreach” stil iteration över samlingen av noder.
IndexOf(Node)Returnerar det nollbaserade indexet för den angivna noden.
Insert(int, Node)Infogar en nod i samlingen vid det angivna indexet.
LinkToPrevious(bool)Länkar eller tar bort länkar till alla sidhuvuden och sidfötter till motsvarande sidhuvuden och sidfötter i föregående avsnitt.
LinkToPrevious(HeaderFooterType, bool)Länkar eller tar bort den angivna sidhuvudet eller sidfoten till motsvarande sidhuvud eller sidfot i föregående avsnitt.
Remove(Node)Tar bort noden från samlingen och från dokumentet.
RemoveAt(int)Tar bort noden vid det angivna indexet från samlingen och från dokumentet.
ToArray()Kopierar allaHeaderFoorter s från samlingen till en ny uppsättning avHeaderFoorter s. (2 methods)

Anmärkningar

Det kan vara max enHeaderFooter

av varjeHeaderFooterType per Section .

HeaderFooter föremål kan förekomma i valfri ordning i samlingen.

Exempel

Visar hur man tar bort alla sidfötter från ett dokument.

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

// Iterera genom varje avsnitt och ta bort sidfötter av alla slag.
foreach (Section section in doc.OfType<Section>())
{
    // Det finns tre typer av sidfots- och sidhuvudstyper.
    // 1 - Den "Första" sidhuvudet/sidfoten, som bara visas på första sidan i ett avsnitt.
    HeaderFooter footer = section.HeadersFooters[HeaderFooterType.FooterFirst];
    footer?.Remove();

    // 2 - Den "Primära" sidhuvudet/sidfoten, som visas på udda sidor.
    footer = section.HeadersFooters[HeaderFooterType.FooterPrimary];
    footer?.Remove();

     // 3 - "Jämn" sidhuvudet/sidfoten, som visas på jämna sidor.
    footer = section.HeadersFooters[HeaderFooterType.FooterEven];
    footer?.Remove();

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

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

Visar hur man skapar ett sidhuvud och en sidfot.

Document doc = new Document();

// Skapa en rubrik och lägg till ett stycke till den. Texten i det stycket
// kommer att visas överst på varje sida i det här avsnittet, ovanför huvudtexten.
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);

// Skapa en sidfot och lägg till ett stycke till den. Texten i det stycket
// kommer att visas längst ned på varje sida i det här avsnittet, under huvudtexten.
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");

Se även