Using the IsCommonValueSelected Property
The IsCommonValueSelected property on the Selection class checks whether a formatting attribute such as Bold, Italic, FontName, or FontSize holds one consistent value across the entire selection. This makes it straightforward to synchronize custom toolbar button states with the text.

One of the least commonly used properties of the Selection class is IsCommonValueSelected. I have recently assisted several customers with this property and thus would like to take this opportunity to explain its exact functionality.
This property informs on whether a certain attribute has the same value as the value of the complete selection.
This is very important, for example, to synchronize a customized button bar with the current formatting of the selected text like bold or italic.
Possible attributes are:
- Baseline: Specifies the attribute set through the Baseline property.
- Bold: Specifies the attribute set through the Bold property.
- FontName: Specifies the attribute set through the FontName property.
- FontSize: Specifies the attribute set through the FontSize property.
- ForeColor: Specifies the attribute set through the ForeColor property.
- FormattingStyle: Specifies the attribute set through the FormattingStyle property.
- Italic: Specifies the attribute set through the Italic property.
- Strikeout: Specifies the attribute set through the Strikeout property.
- TextBackColor: Specifies the attribute set through the TextBackColor property.
- Underline: Specifies the attribute set through the Underline property.
The following VB.NET code return true, if the complete selection is formatted in bold.
Dim IsSelected As Boolean = TextControl1.Selection.IsCommonValueSelected(TXTextControl.Selection.Attribute.Bold)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…
