Testing the Extended TextBox Control
You are now ready to test the extended TextBox control. Right-click on the EnhancedTextBox project in Solution Explorer and select Build to compile the project into a DLL.
Back in the WindowsControls project, right-click on the Common Controls tab in Toolbox and select Choose Items… (see Figure 1).

Figure 1. Add a new control to the ToolBox.
|
|

Figure 2. Select the EnhancedTextBox.dll. |
In the Choose ToolBox Items window, click the Browse… button and navigate to the bin\Debug folder of the project and select EnhancedTextBox.dll (see Figure 2). Click Open.
The EnhancedTextBox control will now appear in the ToolBox. Drag and drop a copy of it onto the default Form1 of the WindowsControls project (see Figure 3).

Figure 3. Drag and drop the EnhancedTextBox control onto Form1.
|
|

Figure 4. Locate the properties and event of the EnhancedTextBox control. |
Right-click on the newly added EnhancedTextBox control and select Properties. Recall the properties and event that you defined earlier in the EnhancedTextBox project. They can now be found in the Properties window. If you switched to Categorized view, you will find them located under the custom-defined CustomProperties category (see Figure 4). You can set the various properties using the Properties window.
Alternatively, you can also set the properties programmatically through code, like this:
'---here is one example---
With EnhancedTextBox1
.FilterType = EnhancedTextBox.FilterTypes.DecimalNumeric
.Precision = EnhancedTextBox.Precisions.TwoDecimal
End With
'---another example---
With EnhancedTextBox1
.RegularExpression = _
"^[\w-\.]{1,}\@([\da-zA-Z-]{1,}\.){1,}[\da-zA-Z-]{2,3}$"
.RegularExpressionErrorMessage = _
"Email address is not correct"
End With
To thoroughly test the new extended control easily, I have added some controls to the form (see
Figure 5). The form also shows the logical relationships between all the various filters. For example, if you select the DecimalNumeric filter, then only the Precision formatting applies. Alternatively, if you select either the AlphabetsOnly or Alphanumeric filter, then only the EnforceCasing formatting applies. If a regular expression is entered, then the text entered will be validated after it loses its focus.

Figure 5. The screen shot shows testing of the EnhancedTextBox control.
|
|

Figure 6. The balloon is used to show the user that the validation failed. |
If the text entered does not pass the validation, a balloon will be shown (see Figure 6).