我使用以下代码清除
txtint1.Clear()
txtext1.Clear()
txttot1.Clear()
txtint2.Clear()
txtext2.Clear()
txttot2.Clear()
txtint3.Clear()
txtext3.Clear()
txttot3.Clear()
txtint4.Clear()
txtext4.Clear()
txttot4.Clear()
txtint5.Clear()
txtext5.Clear()
txttot5.Clear()
txtint6.Clear()
txtext6.Clear()
txttot7.Clear()
txtint8.Clear()
txtext8.Clear()
txttot8.Clear()
是否有可能一次清除所有文本框控件或使用几行代码清除?
答案 0 :(得分:7)
您可以遍历root.Controls
中包含的表单上的所有控件,并查看它是否为文本框TypeOf ctrl Is TextBox
类型,然后您可以清除该控件中的文本CType(ctrl, TextBox).Text = String.Empty
嘛!!您需要使用递归来遍历所有控件
添加代码:
Public Sub ClearTextBox(parent As Control)
For Each child As Control In parent.Controls
ClearTextBox(child)
Next
If TryCast(parent, TextBox) IsNot Nothing Then
TryCast(parent, TextBox).Text = [String].Empty
End If
End Sub
答案 1 :(得分:4)
你可以把它们放在一个数组中然后循环遍历数组:
For Each txt In {txtint1, txtext1, txttot1, txtint2, txtext2, txttot2, txtint3, txtext3, txttot3, txtint4, txtext4, txttot4, txtint5, txtext5, txttot5, txtint6, txtext6, txttot7, txtint8, txtext8, txttot8}
txt.Clear()
Next
答案 2 :(得分:3)
我尝试了其中一个例子,但这似乎对我有用:
Dim a As Control
For Each a In Me.Controls
If TypeOf a Is TextBox Then
a.Text = Nothing
End If
Next
答案 3 :(得分:1)
尝试一下
For Each txt As Control In Me.Controls.OfType(Of TextBox)()
txt.Text = ""
Next
答案 4 :(得分:0)
尝试这个
Dim a As Control
For Each a In Me.Controls
If TypeOf a Is TextBox Then
a.Text = ""
End If
Next
或
Dim a As Control
For Each a In Me.Controls
If TypeOf a Is TextBox Then
a.clear()
End If
Next
如果.Clear()是textbox属性的成员,则使用它。我猜.clear()不是文本框属性的成员。
答案 5 :(得分:0)
这是我在我的项目中亲自使用的代码^ _ ^
ClearAll TextBoxes :
For Each TxtBox In Me.Controls.OfType(Of TextBox)
TxtBox.Clear()
Next TxtBox
答案 6 :(得分:0)
我必须将Control转换为TextBox才能完成此工作。关于控制对象不可访问的信息。可能有更直接的方法,但我找不到。
我从https://stackoverflow.com/a/16264904/11242863那里得到了主意
Private Sub clearAllTextBoxes()
Dim formControl As Control
Dim txtBox As TextBox
For Each formControl In Me.Controls
If TypeOf formControl Is TextBox Then
txtBox = TryCast(formControl, TextBox)
txtBox.Clear()
End If
Next
End Sub
我希望这对某人有帮助
Tim R
答案 7 :(得分:0)
这会将窗体上的所有控件重置为默认值
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
Controls.Clear()
InitializeComponent()
Form1_Load(Me, Nothing)
End Sub
答案 8 :(得分:0)
这段代码已经过测试,是我用过的最好的代码:
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
Controls.Clear()
InitializeComponent()
Form1_Load(Me, Nothing)
End Sub