The ParagraphStyle and InlineStyle Constructor Unreveled
ParagraphStyle and InlineStyle in TX Text Control each provide three constructor overloads: create a named style, inherit from a base style by name, or clone an existing style. The clone copies all properties and the style name, enabling transfer between separate control instances.

The ParagraphStyle and InlineStyle classes provide three implementations of the constructor. In this post, I would like to explain the differences between these implementations.
The first implementation creates a new style with a specific name. This style can be created, adjusted and added to the TX Text Control instance:
TXTextControl.ParagraphStyle newStyle = new TXTextControl.ParagraphStyle("Heading1");
textControl1.ParagraphStyles.Add(newStyle);
The second implementation creates a new style with a specific name and a base style. The new style inherits all settings from the specified base style.
TXTextControl.ParagraphStyle newStyle = new TXTextControl.ParagraphStyle("Heading2", "Heading1");
textControl1.ParagraphStyles.Add(newStyle);
A typical scenario when using formatting styles is to copy an existing style from one TX Text Control instance to another. It is not possible to copy the style object directly. You need to create a new style in order to be able to use it. For this purpose, the third implementation must be used:
TXTextControl.ParagraphStyle newStyle = new TXTextControl.ParagraphStyle(textControl1.ParagraphStyles.GetItem("Heading1"));
textControl2.ParagraphStyles.Add(newStyle);
The above code creates a new style based on another existing style. All settings including the name are copied and can be added to another instance of TX Text Control.
Related Posts
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.
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…
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…
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…
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…
