验证多个组合框/文本框是否有价值

时间:2014-08-12 14:36:15

标签: vb.net

我有一个winform,有大约6个组合框和3个文本框。我还有一个按钮,它接受上述控件的值并将它们插入到SQL中。有没有比一堆嵌套的if / then语句更好的方法来验证控件在插入数据之前都有值?这变得非常难看。我试过谷歌搜索这个答案,但我得到太多的ASPx答案。我会接受你可能有的任何想法。我只是想找到一个更好的方法来做到这一点。谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

我觉得它不太难。

此代码显示有关第一个空文本框或组合框的错误消息。但是,如果需要,您可以轻松修改以显示所有空组合框和文本框的错误消息。

Private Function ValidateMyControls() As Boolean
    Dim allComboBoxes() As ComboBox = {ComboBox1, ComboBox2, ComboBox3} ' add all your comboboxes here
    Dim allTextBoxes() As TextBox = {TextBox1, TextBox2, TextBox3}      ' add all your textboxes here

    Dim emptyTB As TextBox = allTextBoxes.Where(Function(f) f.Text = "").FirstOrDefault
    Dim emptyCB As ComboBox = allComboBoxes.Where(Function(f) f.SelectedIndex = -1).FirstOrDefault
    If emptyTB IsNot Nothing Then
        MessageBox.Show("Please fill value in " & emptyTB.Name)
        Return False
    ElseIf emptyCB IsNot Nothing Then
        MessageBox.Show("Please select a value in dropdown " & emptyCB.Name)
        Return False
    Else
        ' All set to go!
        Return True
    End If
End Function