我有大约50个Maskedtextbox,其中只有少数是可见的。我需要的是只检查可见的,如果它们是空的。
我使用此代码检查所有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
答案 0 :(得分:0)
你应该像以下一样使用a
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
那应该有用。
编辑: