Products Technologies Demo Docs Blog Support Company

Determine the Current Header or Footer

TX Text Control .NET for Windows Forms lacks a direct property to identify the active header or footer at the input position. This C# workaround uses HeaderFooterActivated and HeaderFooterDeactivated events to track state, then calls Focus to retrigger the activation event.

Determine the Current Header or Footer

TX Text Control ActiveX provides the property HeaderFooterAtInputPos to determine the header or footer at the current input position. This is necessary as the HeaderFooterDeactivated event is also fired, if TX Text Control loses the focus. To solve this with TX Text Control .NET for Windows Forms, a small trick can be used.

By setting the focus back to TX Text Control, the HeaderFooterActivated event is fired. This event can be used to update a global variable that holds the current active header state.

string activeHeader;

private void textControl1_HeaderFooterActivated(object sender, TXTextControl.HeaderFooterEventArgs e)
{
    activeHeader = e.HeaderFooter.Type.ToString();
}

private void textControl1_HeaderFooterDeactivated(object sender, TXTextControl.HeaderFooterEventArgs e)
{
    activeHeader = null;
}

Now, we can use this state variable in a small function that returns true, if a header band is currently active:

private bool isHeaderActive()
{
    textControl1.Focus();
    if(activeHeader != null)
            return true;
    else
            return false;
}

This function can be called, if you need to know whether a header or footer is active or not:

private void button1_Click(object sender, System.EventArgs e)
{
    if(isHeaderActive() == false)
        MessageBox.Show("No header / footer is active");
    else
        MessageBox.Show(activeHeader + " is active");
}

Feel free to contact me, if you have any questions or would like to discuss this little trick.

Stay in the loop!

Subscribe to the newsletter to receive the latest updates.

Related Posts

Windows FormsWPF.NET

Create a Table of Contents in Windows Forms using C#

This article explains how to create a table of contents in Windows Forms using the ribbon or programmatically. Creating a table of contents is required to organize large documents.


Windows FormsList.NET

Two Ways to Restart Numbered Lists in TX Text Control

In TX Text Control, numbered lists are continued by default and need to be reset when required. There is more than one way if you want to restart numbered lists in a document. In this article, two…


.NETSample

Paste Special: The Easy Way to Implement

TX Text Control version 15.0 introduced a ClipboardFormat parameter on the Paste method, enabling native Paste Special functionality. The GetClipboardFormats method returns all available clipboard…


.NETSampleSections

How to Remove All Section Breaks in a Document?

TX Text Control 15.0 adds per-section page column support alongside existing section breaks. To remove all section breaks programmatically, iterate through SectionCollection using…


.NETPrintingSample

Batch Printing: How to Print Documents in One Print Job

Batch printing multiple documents as a single print job using TX Text Control relies on a .NET PrintDocument with PrintPage and QueryPageSettings events. Each page is rendered individually via the…

Share on this blog post on: