Я пытаюсь validate
номер телефона textbox
. Я просто хочу, чтобы пользователь мог вводить только numeric
значения и только 10 digits
в текстовое поле. Я сделал это, используя событие keypress
.
оно отлично работает , но проблема в том, что когда длина входного сигнала достигает 10, он даже не разрешает backspace
.
Вот мой код -
Private Sub tbphone_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tbphone.KeyPress
If Not (Char.IsDigit(CChar(CStr(e.KeyChar))) Or e.KeyChar = ChrW(Keys.Back)) Or tbphone.Text.Length >= 10 Then e.Handled = True
End Sub
Теперь может быть сценарий, когда пользователь вводит все цифры правильно, кроме последней. В этом случае он не сможет удалить этот последний di git, возможно, он не сможет ничего сделать в этом текстовом поле, поскольку длина входного текста уже равна 10, а теперь e.handled
установлен на true
.
Пожалуйста, подскажите, как мне этого добиться ...