如何验证至少填写了一个文本框(V​​B.Net)

时间:2018-04-06 07:32:56

标签: vb.net winforms visual-studio-2003

我有4个文本框,我正在尝试验证至少有一个文本框在搜索之前已填充以检查其搜索条件。

我的问题:我的代码正在运行,但是当我想继续使用一个填充字段时,它仍会显示messageBox。

If txtMember.Text = "" Then
            MessageBox.Show("Please enter a value!")
        ElseIf txtReference.Text = "" Then
            MessageBox.Show("Please enter a value!")
        ElseIf txtName.Text = "" Then
            MessageBox.Show("Please enter a value!")
        ElseIf txtCode.TextLength = "" Then
            MessageBox.Show("Please enter a value!")
        Else
            SearchClick()
        End If

我该如何解决这个问题?非常感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

AllAny扩展方法在这种情况下非常有用,例如

If {TextBox1, TextBox2, TextBox3}.Any(Function(tb) tb.TextLength > 0) Then
    'At least one TextBox has some text in it.

答案 1 :(得分:0)

下面是你想要的东西吗? 因此,如果每个文本框都为空白,则需要显示一个消息框,否则如果填写了其中一个文本框,则执行SearchClick How to use If Else。学习单步执行代码可能会帮助您了解代码中发生的事情。

If txtMember.Text = "" AndAlso txtReference.Text = "" AndAlso txtName.Text = "" AndAlso  txtCode.TextLength = "" Then
    MessageBox.Show("Please enter a value!")
Else
    SearchClick()
End If