In a recent blog entry, I gave an overview of special mouse and keyboard assignments that assist with typical selection tasks. When double-clicking a word, TX Text Control selects the whole word and respects text delimiters such as periods or commas automatically. But sometimes, a delimiter should not be respected, but included when used as part of a decimal number, an URL or an e-mail address.
In such situations, we can easily use the DoubleClick event of TextControl to inject our custom selection behaviour. In this sample, I would like to show how a complete sequence of characters delimited by spaces can be selected. The algorithm works as follows:
- Find the next space character before the current input position.
- Find the next space character after the input position.
- Select the range between these positions.
TX Text Control provides some powerful properties to get the required positions in the current Line. When double-clicking somewhere into the string $399.99, this whole price is selected:
The same custom selection works for date values, URLs or e-mail addresses as well:
You can download the fully functional Visual Studio 2008 project below. At minimum a TX Text Control .NET for Windows Forms trial version is required.