我有 10 个按钮,即 button01
, button02
... button10
.我想要的是如何操纵它。
For x=1 to 10
button(x).text = "blah" 'from database...or something
next
我需要这样做,因为我有 10 个或更多按钮,我想通过初始化来操纵它。这样我就不用手动一一做了。我不知道该怎么做。我还是 .NET 的新手。
最佳答案
您不应该为了节省一些代码行而以这种容易出错的方式执行此操作。但如果你真的想要......
您可以使用 Panel
或另一个容器控件,它对相关控件进行逻辑分组。然后使用 MyPanel.Controls.OfType(Of Button)()
过滤并找到那里的所有按钮。
For Each btn As Button In MyPanel.Controls.OfType(Of Button)()
btn.Text = "blah" 'from database...or something
Next
另一种方法是将它们全部放入数组或其他集合类型中,例如
List(Of Button)
首先,然后循环它们:Dim myButtons = {button1, button2, button3, button4, button5, button6}
For Each btn In myButtons
btn.Text = "blah" 'from database...or something
Next
最后你可以使用
ControlCollection.Find
查找具有给定字符串名称的控件:For i As Int32 = 1 To 10
Dim btns = Me.Controls.Find("button" & i, True)
If btns.Length > 0 Then
btns(0).Text = "blah" 'from database...or something
End If
Next
关于vb.net - 动态获取控件(按钮)的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15266954/