views:

306

answers:

3

How could i validate a textbox in vb.net, so that it gives error message if i enter anything apart from alphabets

+1  A: 

CustomFieldValidator with a regex.

Brian David Berman
How can we use CustomeFieldValidator
+1  A: 

If it's a standard textbox in a WinForms app you can validate every typed character by handling the KeyPressed event and have the following code in the event handler:
e.Handled = Not Char.IsLetter(e.KeyChar)

The user could still use the mouse to paste something in there though so you might need to handle that as well.

Another option is to handle the Validating event and if the textbox contains any non alphabetic characters you set e.Cancel to true.

ho1
+1  A: 

You can check the text string, i.e., textbox1.text, to make sure it has nothing besides alphabet characters in the .Leave event. This will catch an error when the user tabs to the next control, for example. You can do this using a regular expression (import System.Text.RegularExpressions for this example), or you can check the text "manually."

Private Sub TextBox1_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.Leave
  If Not Regex.Match(TextBox1.Text, "^[a-z]*$", RegexOptions.IgnoreCase).Success Then
    MsgBox("Please enter alpha text only.")
    TextBox1.Focus()
  End If
End Sub

If you want to stop the user as soon as a non-alpha key is pressed, you can use the TextChanged event instead of the .Leave event.

xpda