Klo sebelumnya Rani pernah membahas perihal bagaimana membuat input textbox berbentukangka saja (numeric only) nah sekarang bagaimana bila input textbox hanya berupa angka, alphabet (huruf) dan spasi aja yang diperbolehkan? Atow bahasa keren nya Alphanumeric only.
Mari kita lihat sample berikut, untuk UI cukup form berisi textbox aja.
Code
Public Class Form1
Private Sub TextBox1_KeyPress(ByVal sender As Object, _
ByVal e As System.Windows.Forms.KeyPressEventArgs) _
Handles TextBox1.KeyPress
If Char.IsLetterOrDigit(e.KeyChar) = False Then
If e.KeyChar = CChar(ChrW(Keys.Back)) Or _
e.KeyChar = CChar(ChrW(Keys.Space)) Then
e.Handled = False
Else
e.Handled = True
End If
End If
End Sub
Private Function StripNonAlphaNum(ByRef sText As String) As String
Dim strRegex As String = "[^a-zA-Z0-9 -]"
Dim rgx As New System.Text.RegularExpressions.Regex(strRegex)
Return rgx.Replace(sText, "")
End Function
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles TextBox1.TextChanged
TextBox1.Text = StripNonAlphaNum(TextBox1.Text)
End Sub
End Class
Rani menyertakan code handler pada event _TextChanged sebab ada kemungkinan user selain mengetikan eksklusif input ke textbox juga dapat melakukan copy paste. Karena itu fungsi StripNonAlphaNum dipakai untuk menggantikan abjad selain alphanumeric (dan spasi) dengan string kosong alias menghapus nya.
Jika kita run acara ini, maka kita hanya bisa mengetik aksara, angka, dan spasi saja.
Contoh lainya jika kita meng-copy paste You & Me @home ke textbox maka tampilan yang hendak dihasilkan selaku berikut:
Selamat mencoba supaya berguna.
Click here if you like this article.
Sumber http://rani-irsan.blogspot.com
EmoticonEmoticon