Click or drag to resize

HeaderFooterType Enumeration

Specifies the type of the HeaderFooter.

Namespace: SautinSoft.Document
Assembly: SautinSoft.Document (in SautinSoft.Document.dll) Version: 2024.7.18
Syntax
public enum HeaderFooterType
Members
Member nameValueDescription
HeaderDefault0 Default header.
HeaderEven1 Header for even pages.
HeaderFirst2 Header for the first page in section.
FooterDefault3 Default footer.
FooterEven4 Footer for even pages.
FooterFirst5 Footer for the first page in section.
Example

See Developer Guide: Create a document with different headers: on first page, default and in another section

Create a document with different headers: on first page, default and in another section using C#
using System;
using System.IO;
using SautinSoft.Document;

namespace Example
{
    class Program
    {
        static void Main(string[] args)
        {
            // Get your free 100-day key here:   
            // https://sautinsoft.com/start-for-free/

            DifferentHeaderAndFooters();
        }
        /// <summary>
        /// Creates a document with different headers: on first page, default and in another section.
        /// </summary>
        /// <remarks>
        /// Details: https://sautinsoft.com/products/document/help/net/developer-guide/create-docx-document-with-different-headers-net-csharp-vb.php
        /// </remarks>
        static void DifferentHeaderAndFooters()
        {
            string documentPath = "DifferentHeaders.docx";

            DocumentCore dc = new DocumentCore();
            Section section1 = new Section(dc);
            dc.Sections.Add(section1);

            // Create headers.
            HeaderFooter defaultHeader = CreateDefaultHeader(dc);
            HeaderFooter firstHeader = CreateFirstHeader(dc);

            // Add the headers into the collection.
            section1.HeadersFooters.Add(defaultHeader);
            section1.HeadersFooters.Add(firstHeader);

            // Set that main section has a different header on the first page.
            section1.PageSetup.TitlePage = true;

            // Add some content.
            Paragraph p = new Paragraph(dc, "My father\'s family name being Pirrip, and my Christian name Philip, " +
                "my infant tongue could make of both names nothing longer or more explicit than Pip. So, I called myself " +
                "Pip, and came to be called Pip. I give Pirrip as my father\'s family name, on the authority of his " +
                "tombstone and my sister, -Mrs. Joe Gargery, who married the blacksmith.");
            int totalPars = 15;

            for (int i = 0; i < totalPars; i++)
            {
                section1.Blocks.Add(p.Clone(true));
            }

            // Add another header and content in the document.

            // Let's create a one more section.
            Section section2 = new Section(dc);
            dc.Sections.Add(section2);

            // Create a new header.
            HeaderFooter header = new HeaderFooter(dc, HeaderFooterType.HeaderDefault);
            header.Content.Start.Insert("Chapter II - another header.", new CharacterFormat()
            {
                FontColor = Color.Blue,
                Size = 18
            });

            // Add the header into the Section2.
            section2.HeadersFooters.Add(header);

            // Add some content.
            section2.Content.Start.Insert("My sister, Mrs. Joe Gargery, was more than twenty years older than I, " +
                "and had established a great reputation with herself and the neighbors because she had brought me " +
                "up \"by hand.\" Having at that time to find out for myself what the expression meant, and knowing " +
                "her to have a hard and heavy hand, and to be much in the habit of laying it upon her husband as well " +
                "as upon me, I supposed that Joe Gargery and I were both brought up by hand.");

            // Save the document into DOCX format.
            dc.Save(documentPath);

            // Open the result for demonstration purposes.
            System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(documentPath) { UseShellExecute = true });
        }
        static HeaderFooter CreateDefaultHeader(DocumentCore dc)
        {
            HeaderFooter header = new HeaderFooter(dc, HeaderFooterType.HeaderDefault);
            header.Content.Start.Insert("Chapter I - This is the default header", new CharacterFormat()
            {
                FontName = "Verdana",
                Size = 18.0,
                FontColor = Color.Orange
            });
            return header;
        }

        static HeaderFooter CreateFirstHeader(DocumentCore dc)
        {
            HeaderFooter header = new HeaderFooter(dc, HeaderFooterType.HeaderFirst);
            header.Content.Start.Insert("Charles Dickens. Great Expectations - 1st page header", new CharacterFormat()
            {
                FontName = "Verdana",
                Size = 18.0,
                FontColor = Color.DarkGreen
            });
            return header;
        }
    }
}
Create a document with different headers: on first page, default and in another section using VB.Net
Imports System
Imports System.IO
Imports SautinSoft.Document

Namespace Example
    Friend Class Program
        Shared Sub Main(ByVal args() As String)
            DifferentHeaderAndFooters()
        End Sub
        ''' Get your free 100-day key here:   
        ''' https://sautinsoft.com/start-for-free/
        ''' <summary>
        ''' Creates a document with different headers: on first page, default and in another section.
        ''' </summary>
        ''' <remarks>
        ''' Details: https://sautinsoft.com/products/document/help/net/developer-guide/create-docx-document-with-different-headers-net-csharp-vb.php
        ''' </remarks>
        Private Shared Sub DifferentHeaderAndFooters()
            Dim documentPath As String = "DifferentHeaders.docx"

            Dim dc As New DocumentCore()
            Dim section1 As New Section(dc)
            dc.Sections.Add(section1)

            ' Create headers.
            Dim defaultHeader As HeaderFooter = CreateDefaultHeader(dc)
            Dim firstHeader As HeaderFooter = CreateFirstHeader(dc)

            ' Add the headers into the collection.
            section1.HeadersFooters.Add(defaultHeader)
            section1.HeadersFooters.Add(firstHeader)

            ' Set that main section has a different header on the first page.
            section1.PageSetup.TitlePage = True

            ' Add some content.
            Dim p As New Paragraph(dc, "My father's family name being Pirrip, and my Christian name Philip, " & "my infant tongue could make of both names nothing longer or more explicit than Pip. So, I called myself " & "Pip, and came to be called Pip. I give Pirrip as my father's family name, on the authority of his " & "tombstone and my sister, -Mrs. Joe Gargery, who married the blacksmith.")
            Dim totalPars As Integer = 15

            For i As Integer = 0 To totalPars - 1
                section1.Blocks.Add(p.Clone(True))
            Next i

            ' Add another header and content in the document.

            ' Let's create a one more section.
            Dim section2 As New Section(dc)
            dc.Sections.Add(section2)

            ' Create a new header.
            Dim header As New HeaderFooter(dc, HeaderFooterType.HeaderDefault)
            header.Content.Start.Insert("Chapter II - another header.", New CharacterFormat() With {
                .FontColor = Color.Blue,
                .Size = 18
            })

            ' Add the header into the Section2.
            section2.HeadersFooters.Add(header)

            ' Add some content.
            section2.Content.Start.Insert("My sister, Mrs. Joe Gargery, was more than twenty years older than I, " & "and had established a great reputation with herself and the neighbors because she had brought me " & "up ""by hand."" Having at that time to find out for myself what the expression meant, and knowing " & "her to have a hard and heavy hand, and to be much in the habit of laying it upon her husband as well " & "as upon me, I supposed that Joe Gargery and I were both brought up by hand.")

            ' Save the document into DOCX format.
            dc.Save(documentPath)

            ' Open the result for demonstration purposes.
            System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(documentPath) With {.UseShellExecute = True})
        End Sub
        Private Shared Function CreateDefaultHeader(ByVal dc As DocumentCore) As HeaderFooter
            Dim header As New HeaderFooter(dc, HeaderFooterType.HeaderDefault)
            header.Content.Start.Insert("Chapter I - This is the default header", New CharacterFormat() With {
                .FontName = "Verdana",
                .Size = 18.0,
                .FontColor = Color.Orange
            })
            Return header
        End Function

        Private Shared Function CreateFirstHeader(ByVal dc As DocumentCore) As HeaderFooter
            Dim header As New HeaderFooter(dc, HeaderFooterType.HeaderFirst)
            header.Content.Start.Insert("Charles Dickens. Great Expectations - 1st page header", New CharacterFormat() With {
                .FontName = "Verdana",
                .Size = 18.0,
                .FontColor = Color.DarkGreen
            })
            Return header
        End Function
    End Class
End Namespace
See Also