0

我有大约 50 个 Maskedtextboxes,其中只有几个是可见的。我需要的是只检查可见的是否为空。

我使用此代码检查所有 Maskedtextboxes:

 Dim empty = TabLABOR.Controls.OfType(Of MaskedTextBox)().Where(Function(txt) txt.Text.Length = 0)
    If empty.Any Then
        MessageBox.Show(String.Format("Please fill all fields",
                        String.Join(",", empty.Select(Function(txt) txt.Name))))
    Else
        TabControlBlockD.SelectTab(TabMATERIALS)
    End If

End Sub
4

1 回答 1

0

你应该像下面这样为每个使用

dim myfrm as MyCurrentForm()

然后

for Each item As System.Windows.Forms.Control In myfrm.Controls
        If item.GetType Is GetType(System.Windows.Forms.MaskedTexbox) Then
            For Each mboxes As MaskedTexbox In item.Controls
                If MaskedTexbox.text = "" AND maskedTextbox.visible = true Then
                  //Make deltu king of the world
                 End If
            Next
        End If
    Next

那应该行得通。

编辑:

于 2012-10-09T14:32:42.757 回答