This week, we have received many requests on how to use the FormattingStyles programmatically. Generally, this task is quite simple: You just have to create a new ParagraphStyle or a InlineStyle object. These classes are inherited from the base class FormattingStyle that implements the functionality common to all formatting styles.

A user was asking how to create a style that can be used to display paragraphs - such as in a table of contents list. The text is left aligned and the page number should be displayed at the very right border of the document. Therefore, we can use the tab positions, especially the RightBorderTab. The following code creates a new paragraph style, removes all default positions and specifies a right border tab. Finally, the new style will be added to the collection of available styles.

Dim ps As New TXTextControl.ParagraphStyle("TOC", "[Normal]")
ps.ParagraphFormat.TabPositions = New Integer(13) {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
ps.ParagraphFormat.TabTypes = New TXTextControl.TabType() {TXTextControl.TabType.RightBorderTab}

TextControl1.ParagraphStyles.Add(ps)

This style can be applied by choosing it from the TX Text Control button bar or it can be programmatically applied to the current paragraph using the FormattingStyle property of the current selection. This property accepts the style name as a string.

TextControl1.Selection.FormattingStyle = "TOC"