Windows アプリケーションを開発しています。フォームがあり、そのフォームのテキスト ボックスを検証しようとしています。
テキストボックスがAlphabates、Didgits、およびコンマのみを受け入れるように、テキストボックスにいくつかの検証を行いたいと思います(特殊記号のような他の文字は許可されません)。
コードを書き込もうとしていますが、うまくいかないことがあります。ただし、<>/; などの特殊文字は引き続き使用できます。どのような変更を行う必要がありますか?
ここにコードがあります...
キーダウン イベント
Private Sub txtOLDBuildingName_KeyDown(sender As Object, e As KeyEventArgs) Handles txtOLDBuildingName.KeyDown
' Initialize the flag to false.
nonNumberEntered = False
' Determine whether the keystroke is a number from the top of the keyboard.
If (e.KeyCode < Keys.D0 And e.KeyCode > Keys.D9) And (e.KeyCode > Keys.A And e.KeyCode < Keys.Z) Then
nonNumberEntered = True
End If
'If shift key was pressed, it's not a number.
If Control.ModifierKeys = Keys.Shift Then
nonNumberEntered = True
End If
End Sub
キー押下イベント
Private Sub txtOLDBuildingName_KeyPress(sender As Object, e As KeyPressEventArgs) Handles txtOLDBuildingName.KeyPress
If nonNumberEntered = True Then
e.Handled = True
End If
End Sub