我正在创建一个应用程序,其中有一个带有一列文本框的表单,这些文本框由两个不同的表单填充,每个表单上都有一个按钮。单击这些表单的按钮时,它们会将结果输入到列中的文本框中。
我遇到的问题是说我点击(form2.button 1)三次它会占用文本框1,2和3.现在说我想用(form1.button 1)将数据输入到文本框中4它将占用文本框1.我为每个按钮设置了多次点击,所以我想了解我是如何说的那样(form2.button 1)被点击然后(form1.button1)将转到第二次点击例如。有10个文本框,所以我需要它,以便它们对每个被点击的次数做出反应。
答案 0 :(得分:0)
为什么不在包含文本框的表单中存储计数器变量,比如NextTextBoxNumber
每次填充文本框时递增,然后根据此值确切地知道要转到下一个文本框的文本框变量?
另外,继续@Oded的评论,你可以轻松地完成他的意思,使用If Textbox1.Text <> "" Then ...
这有意义吗?
答案 1 :(得分:0)
假设TextBox通过TextBox10被称为TextBox1,你可以使用这样的子:
Public Sub AddValue(ByVal value As String)
For i As Integer = 1 To 10
Dim tbName As String = "TextBox" & i
Dim matches() As Control = Me.Controls.Find(tbName, True)
If matches.Length > 0 AndAlso TypeOf matches(0) Is TextBox Then
Dim tb As TextBox = DirectCast(matches(0), TextBox)
If tb.Text.Trim.Length = 0 Then
tb.Text = value
Exit Sub
End If
End If
Next
MessageBox.Show("All TextBoxes are already taken!")
End Sub