我试图找到一个初学者友好而有效的方法来将vb形式的文本框作为数组引用,然后循环检查不同的条件。而不必去
If IsNumeric(firstNameTxt.Text) Then
MessageBox("First name can only contain letters")
End If
if IsNumeric(lastNameTxt.Text)
:
:
我正在尝试进行表单验证,并希望遍历表单中的所有文本框,检查它们是否只包含字母
答案 0 :(得分:0)
要在表单中检查它们只包含字母的所有textboxes
表单验证,您可以使用以下代码:
Dim ctrl As Control
For Each ctrl In Me.Controls
If TypeOf ctrl Is TextBox And IsNumeric(ctrl.Text) Then
MsgBox(ctrl.Name.ToString & " First name can only contain letters")
End If
Next
答案 1 :(得分:0)
您可以阻止他们甚至输入一个数字,这样可以防止首先验证它。我已经用数字和日期做了很多次,但它应该像你想要的一样简单:
Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
NonNumericTextboxKeyPress(sender, e)
End Sub
Public Sub NonNumericTextboxKeyPress(ByVal txt As TextBox, ByVal e As System.Windows.Forms.KeyPressEventArgs, Optional ByVal AllowNegative As Boolean = True, Optional ByVal AllowDecimal As Boolean = True)
If "1234567890".Contains(e.KeyChar) Then
e.Handled = True
End If
End Sub