有没有办法可以将表单中的每个文本框分配给单个变量?

1 vb.net

txtRound.Text
txtDaysWorked.Text
txtPerGallon.Text
txtGasCost.Text
txtMaint.Text
txtParking.Text
txtInsure.Text
Run Code Online (Sandbox Code Playgroud)

我有所有这些文本框的vb形式,而不是检查每一个文本框,以确保它们都是正数我想要一个更有效的方法来检查它们与一个变量.一旦声明了变量,我就会这样做

If (dblVariable > 0) Then
Run Code Online (Sandbox Code Playgroud)

比一长串检查容易得多

Ash*_*nko 5

您的表单具有Controls属性,该属性是该表单上所有控件的列表.

您可以遍历每个控件并检查它是否为a TextBox,如果是这样,则设置它的Text属性.

如果LINQ可用,您可以将其简化为

For Each control In myForm.Controls.OfType<TextBox>()
    control.Text = "My Value"
Next
Run Code Online (Sandbox Code Playgroud)

重新阅读这个问题,标题有点误导,但我得到了你现在所要​​求的.

同样,假设LINQ可用,您应该使用.All扩展名.

If Me.Controls.OfType(Of TextBox)().All(Function(x) Convert.ToDouble(x.Text) > 0) Then
    ' Do something
End If
Run Code Online (Sandbox Code Playgroud)