# Inserting MS Word Compatible Page Number Fields

> TX Text Control X9 introduces a dialog and context menus for inserting page number fields. A new field type shows the total page count and updates automatically as pages change. The PageNumberField API supports section-specific numbering and exports to DOC, DOCX, and RTF formats.

- **Author:** Bjoern Meyer
- **Published:** 2013-05-30
- **Modified:** 2026-07-17
- **Description:** TX Text Control X9 introduces a dialog and context menus for inserting page number fields. A new field type shows the total page count and updates automatically as pages change. The PageNumberField API supports section-specific numbering and exports to DOC, DOCX, and RTF formats.
- **2 min read** (307 words)
- **Tags:**
  - Sample
- **Web URL:** https://www.textcontrol.com/blog/2013/05/30/inserting-ms-word-compatible-page-number-fields/
- **LLMs URL:** https://www.textcontrol.com/blog/2013/05/30/inserting-ms-word-compatible-page-number-fields/llms.txt
- **LLMs-Full URL:** https://www.textcontrol.com/blog/2013/05/30/inserting-ms-word-compatible-page-number-fields/llms-full.txt

---

![Page number fields](https://s1-www.textcontrol.com/assets/dist/blog/2013/05/30/a/assets/tx_pagenumber.webp "Page number fields")[TX Text Control X9](https://www.textcontrol.com/product/tx-text-control-dotnet-winforms/whats-new/) introduced a new ready-to-use dialog and context menus to insert and manipulate page numbers. Additionally, a new type of page numbers has been implemented to show the total number of pages. This page number field is updated automatically when pages are added or removed.

![TX Text Control page number dialog](https://s1-www.textcontrol.com/assets/dist/blog/2013/05/30/a/assets/feature_pagenumbers_2.webp "TX Text Control page number dialog")These fields are completely compatible to MS Word and can be exported and imported to and from DOC, DOCX or RTF.

For each section in the document, page numbers can either be continued from the previous section or can be restarted with a certain start number.

The new dialog can be used to change the type of the page number field and to adjust the number format and the section behavior.

The following C# code shows how to insert a new header and two page number fields. The first field shows the current page number and the second field represents the total number of pages in the document.

```
textControl1.Sections.GetItem().HeadersAndFooters.Add(
    TXTextControl.HeaderFooterType.Header);

HeaderFooter hfHeader =
    textControl1.Sections.GetItem().HeadersAndFooters.GetItem(
    HeaderFooterType.Header);

PageNumberField currentPageNumber =
   new PageNumberField(1, NumberFormat.ArabicNumbers);

hfHeader.PageNumberFields.Add(currentPageNumber);

hfHeader.Selection.Text = " of ";

PageNumberField totalPageNumbers = new PageNumberField();
totalPageNumbers.ShowNumberOfPages = true;

hfHeader.PageNumberFields.Add(totalPageNumbers);
```

The following screenshot shows the page number fields in the inserted page header:

![TX Text Control page number fields](https://s1-www.textcontrol.com/assets/dist/blog/2013/05/30/a/assets/tx_results.webp "TX Text Control page number fields")[Start today and download a fully featured, 30 day trial version ](https://www.textcontrol.com/product/ "Fully Featured, 30 Day Trial Versions")

---

## About Bjoern Meyer

As CEO, Bjoern is the visionary behind our strategic direction and business development, bridging the gap between our customers and engineering teams. His deep passion for coding and web technologies drives the creation of innovative products. If you're at a tech conference, be sure to stop by our booth - you'll most likely meet Bjoern in person. With an advanced graduate degree (Dipl. Inf.) in Computer Science, specializing in AI, from the University of Bremen, Bjoern brings significant expertise to his role. In his spare time, Bjoern enjoys running, paragliding, mountain biking, and playing the piano.

- [LinkedIn](https://www.linkedin.com/in/bjoernmeyer/)
- [X](https://x.com/txbjoern)
- [GitHub](https://github.com/bjoerntx)

---

## Related Posts

- [Create a Table of Contents in Windows Forms using C#](https://www.textcontrol.com/blog/2023/01/23/create-toc-in-windows-forms/llms.txt)
- [Official TX Text Control .NET Sample Applications Are Now Hosted on GitHub](https://www.textcontrol.com/blog/2023/01/08/official-tx-text-control-net-sample-applications-are-now-hosted-on-github/llms.txt)
- [Detect Toggle Button Changes Using a MutationObserver](https://www.textcontrol.com/blog/2021/11/11/detect-toggle-button-changes-using-a-mutationobserver/llms.txt)
- [Two Ways to Restart Numbered Lists in TX Text Control](https://www.textcontrol.com/blog/2021/11/03/two-ways-to-restart-numbered-lists/llms.txt)
- [Zoom Tricks: Disabling CTRL + MOUSE WHEEL and More](https://www.textcontrol.com/blog/2020/12/09/zoom-tricks-disabling-ctrl-mouse-wheel-and-more/llms.txt)
- [AutoCorrect Using TX Text Control and TX Spell .NET](https://www.textcontrol.com/blog/2017/08/17/autocorrect-using-tx-text-control-and-tx-spell-net/llms.txt)
- [Creating Conference Badges with Text Control Reporting](https://www.textcontrol.com/blog/2017/02/14/creating-conference-badges-with-text-control-reporting/llms.txt)
- [Using Custom Document Properties to Store Additional Document Information](https://www.textcontrol.com/blog/2017/02/09/using-custom-document-properties-to-store-additional-document-information/llms.txt)
- [Use SubTextParts to Protect Document Parts](https://www.textcontrol.com/blog/2015/12/29/use-subtextparts-to-protect-document-parts/llms.txt)
- [Reporting: Styling the DocumentViewer for ASP.NET](https://www.textcontrol.com/blog/2015/06/14/reporting-styling-the-documentviewer-for-aspnet/llms.txt)
- [Reporting: Merging MS Word Documents with DocVariables](https://www.textcontrol.com/blog/2015/06/10/reporting-merging-ms-word-documents-with-docvariables/llms.txt)
- [TextControl.Web: Determine when a Document Has Been Completely Loaded](https://www.textcontrol.com/blog/2015/06/09/textcontrolweb-determine-when-a-document-has-been-completely-loaded/llms.txt)
- [TextControl.Web: Adding Custom Ribbon Tabs](https://www.textcontrol.com/blog/2015/05/29/textcontrolweb-adding-custom-ribbon-tabs/llms.txt)
- [Building a Touch-enabled Button Bar with Javascript](https://www.textcontrol.com/blog/2015/05/27/building-a-touch-enabled-button-bar-with-javascript/llms.txt)
- [TextControl.Web: Inserting Merge Fields Using Javascript](https://www.textcontrol.com/blog/2015/05/16/textcontrolweb-inserting-merge-fields-using-javascript/llms.txt)
- [MailMerge: Merge Hyperlinks into Merge Fields](https://www.textcontrol.com/blog/2015/05/15/mailmerge-merge-hyperlinks-into-merge-fields/llms.txt)
- [Mail Merge: Suppress Lines with Empty Merge Fields](https://www.textcontrol.com/blog/2014/08/01/mail-merge-suppress-lines-with-empty-merge-fields/llms.txt)
- [Interactive Spelling Suggestions Using TX Spell .NET](https://www.textcontrol.com/blog/2014/07/30/interactive-spelling-suggestions-using-tx-spell-net/llms.txt)
- [Alternate Row Colors Using NEXT Fields](https://www.textcontrol.com/blog/2013/12/30/alternate-row-colors-using-next-fields/llms.txt)
- [Loading Dictionaries Dynamically in TX Spell .NET](https://www.textcontrol.com/blog/2013/12/20/loading-dictionaries-dynamically-in-tx-spell-net/llms.txt)
- [Restart the Page Numbering Fields Per Section](https://www.textcontrol.com/blog/2013/11/08/restart-the-page-numbering-fields-per-section/llms.txt)
- [TX Barcode .NET: Test the Barcode Engine Live!](https://www.textcontrol.com/blog/2013/07/10/tx-barcode-net-test-the-barcode-engine-live/llms.txt)
- [SD Times .NET Component Buyers Guide 2013: Simplify Report Creation](https://www.textcontrol.com/blog/2013/06/06/sd-times-net-component-buyers-guide-2013-simplify-report-creation/llms.txt)
- [MailMerge: Creating Shipping Labels Using TX Text Control](https://www.textcontrol.com/blog/2012/11/23/mailmerge-creating-shipping-labels-using-tx-text-control/llms.txt)
- [Using RulerBars in Separate Windows](https://www.textcontrol.com/blog/2012/11/20/using-rulerbars-in-separate-windows/llms.txt)
