Я пытаюсь проверить поле адреса электронной почты. Я сделал это, используя Regex
, и он работает нормально, но проблема в
Я установил e.cancel
в True
в validating
событии, из-за которого он не позволяет пользователю менять фокус, если только пользователь вводит правильный email-идентификатор, даже это не проблема, но он даже не позволит пользователю закрыть окно / форму.
Я имею в виду, если пользователь пытается abort
complete transaction
, зачем ему / ей вводить действительный идентификатор электронной почты.
Вот мой код -
Private Sub tbemail_Validating(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles tbemail.Validating
Dim pattern As String = "^[a-z][a-z|0-9|]*([_][a-z|0-9]+)*([.][a-z|0-9]+([_][a-z|0-9]+)*)?@[a-z][a-z|0-9|]*\.([a-z][a-z|0-9]*(\.[a-z][a-z|0-9]*)?)$"
Dim match As System.Text.RegularExpressions.Match = Regex.Match(tbemail.Text.Trim(), pattern, RegexOptions.IgnoreCase)
If (match.Success) Then
Else
MessageBox.Show("Please enter a valid email id", "Checking")
e.Cancel = True
End If
End Sub