[英]VB.NET Multiple Textboxes Validation
有人可以在验证带有多个文本框的表单时显示一些指导 (不要求我做作业)吗? 用户将被告知什么是有问题的领域。
表格的来源:
Private Sub btnNewUser_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNewUser.Click
'If txtEmail.Text.Contains(" "c) Or Not(InStr(txtEmail.Text, "@")) Then
'txtEmail.Clear()
'ElseIf txtPassword.Text.Contains(" "c) Then
'txtPassword.Clear()
'ElseIf txtPIN.Text ''#uh
aryUserRecord(0) = txtEmail.Text
aryUserRecord(1) = txtPassword.Text
aryUserRecord(2) = txtPIN.Text ''#consists of a letter then two numbers then another addNewUser = Join(aryUserData, ",")
''#more source
Me.DialogResult = DialogResult.OK
End Sub
您可以使用ErrorProvider标记有问题的字段。 您将要与每个TextBox的验证事件相关联。 像这样:
Private Sub TextBox1_Validating(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles TextBox1.Validating
If TextBox1.Text = "" Then
ErrorProvider1.SetError(TextBox1, "Text cannot be empty")
e.Cancel = True
End If
End Sub
然后,当文本框确实进行验证时,您可以连接到Validated事件以清除ErrorProvider:
Private Sub TextBox1_Validated(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.Validated
ErrorProvider1.SetError(TextBox1, "")
End Sub
尝试阅读RegularExpressionValidator。
您可以为每个文本框分配一个,以使用正则表达式验证用户输入客户端,基于正则表达式,这似乎是一个不错的选择。
使用winforms,您将需要实施Validating和Validated事件
http://msdn.microsoft.com/en-us/library/system.windows.forms.control.causesvalidation.aspx
在上面的链接中,为电子邮件提供了一个示例。 这应该给您参考开始
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.