加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

vb.net – 动态获取控件(按钮)的名称

发布时间:2020-12-17 07:15:08 所属栏目:百科 来源:网络整理
导读:我有10个按钮,分别是button01,button02 … button10.我想要的是如何操纵它. For x=1 to 10 button(x).text = "blah" 'from database...or somethingnext 我需要这样做,因为我有10个或更多按钮,我想通过初始化来操作它.所以我不是一个一个地手动完成的.我不知
我有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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读