访问每个按钮';在vb.net中动态生成属性后,是否为?

访问每个按钮';在vb.net中动态生成属性后,是否为?,vb.net,dynamic,minesweeper,Vb.net,Dynamic,Minesweeper,我使用以下代码动态生成按钮。我想知道如何以这样的方式编码,如果我单击一个按钮,应该会对相同形式的其他按钮进行一些更改。由于所有按钮都是在循环中生成的,我不知道如何在代码的其他地方调用一个按钮 Private Sub random2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim i As Integer For i = 1 To

我使用以下代码动态生成按钮。我想知道如何以这样的方式编码,如果我单击一个按钮,应该会对相同形式的其他按钮进行一些更改。由于所有按钮都是在循环中生成的,我不知道如何在代码的其他地方调用一个按钮

   Private Sub random2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)         Handles MyBase.Load
    Dim i As Integer
    For i = 1 To 16
        Dim btn As New Button
        AddHandler btn.Click, AddressOf ClickMe
        btn.Width = 23
        btn.Height = 23
        btn.Text = ""
        btn.Tag = i
        btn.Name = i
        btn.Name = "Button" & i
        flp.Controls.Add(btn)   'flp stand for flow layout panel

    Next
End Sub
Private Sub ClickMe(ByVal Sender As Object, ByVal e As EventArgs)
    Dim btn As Button
    btn = CType(Sender, Button)
   dim str as string = btn.tag
   MsgBox(str)
        End Sub
    End Class

您已将所有动态创建的按钮添加到FlowLayoutPanel控件集合。
您将在那里发现它们的语法如下

Dim btn As Button = TryCast(flp.Controls("name"), Button)
if btn IsNot Nothing then
    btn.Caption = "New Text"
    ....
End If
或者如果你想要一个按钮在一个特定的索引

Dim btn As Button = TryCast(flp.Controls(index), Button)
你戴了一半的帽子。VB.Net使用括号,而不是括号:
flp.Controls(“name”)