Vb.net 如何将多个按钮分组为';一个';

Vb.net 如何将多个按钮分组为';一个';,vb.net,Vb.net,我是编码新手,对于一个项目,我需要写很多这样的“块”,通常是一个字母和数字,后跟一条语句来启用或禁用它们: a1.Enabled = True a2.Enabled = True a3.Enabled = True a4.Enabled = True a5.Enabled = True a6.Enabled = True a7.Enabled = True a8.Enabled = True a9.Enabled = True 我四处寻找任何想法或帮助,但似乎没有任何工作,所有我想尝试和做的是

我是编码新手,对于一个项目,我需要写很多这样的“块”,通常是一个字母和数字,后跟一条语句来启用或禁用它们:

a1.Enabled = True
a2.Enabled = True
a3.Enabled = True
a4.Enabled = True
a5.Enabled = True
a6.Enabled = True
a7.Enabled = True
a8.Enabled = True
a9.Enabled = True
我四处寻找任何想法或帮助,但似乎没有任何工作,所有我想尝试和做的是有一行,例如

    ablock.Enable = False
或者类似的东西


感谢您的帮助。

您希望将数组定义为类的成员,如下所示:

Private aBlock() As Button
aBlock = {a1, a2, a3, a4, a5, a6, a7, a8, a9}
For Each btn As Button In aBlock
    btn.Enabled = True
Next
然后,在页面或表单加载的早期某个地方,在控件实际创建之后,您需要这样的代码:

Private aBlock() As Button
aBlock = {a1, a2, a3, a4, a5, a6, a7, a8, a9}
For Each btn As Button In aBlock
    btn.Enabled = True
Next
表单设计器使首先使用数组声明控件变得很尴尬,但至少可以在加载表单/页面时将它们全部放在同一个集合中

稍后,这将允许您运行如下代码:

Private aBlock() As Button
aBlock = {a1, a2, a3, a4, a5, a6, a7, a8, a9}
For Each btn As Button In aBlock
    btn.Enabled = True
Next
或者,如果这些按钮已经属于某个公共容器(如面板或GroupBox),并且假设为WinForms,则可以执行以下操作:

For Each btn As Button In Panel1.Controls.OfType(Of Button)()
    btn.Enabled = True
Next

您希望将数组定义为类的成员,如下所示:

Private aBlock() As Button
aBlock = {a1, a2, a3, a4, a5, a6, a7, a8, a9}
For Each btn As Button In aBlock
    btn.Enabled = True
Next
然后,在页面或表单加载的早期某个地方,在控件实际创建之后,您需要这样的代码:

Private aBlock() As Button
aBlock = {a1, a2, a3, a4, a5, a6, a7, a8, a9}
For Each btn As Button In aBlock
    btn.Enabled = True
Next
表单设计器使首先使用数组声明控件变得很尴尬,但至少可以在加载表单/页面时将它们全部放在同一个集合中

稍后,这将允许您运行如下代码:

Private aBlock() As Button
aBlock = {a1, a2, a3, a4, a5, a6, a7, a8, a9}
For Each btn As Button In aBlock
    btn.Enabled = True
Next
或者,如果这些按钮已经属于某个公共容器(如面板或GroupBox),并且假设为WinForms,则可以执行以下操作:

For Each btn As Button In Panel1.Controls.OfType(Of Button)()
    btn.Enabled = True
Next

Coehoorn有最好的方法,但作为初学者,你可能想要最简单的方法,所以我给你

您可以让Sub在您的位置执行此操作,这样您就不必一直编写所有按钮的名称

这里有一种方法可以做到:

Private Sub SetABlockEnabled(ByVal isEnabled As Boolean)
    a1.Enabled = isEnabled
    a2.Enabled = isEnabled
    a3.Enabled = isEnabled
    a4.Enabled = isEnabled
    a5.Enabled = isEnabled
    a6.Enabled = isEnabled
    a7.Enabled = isEnabled
    a8.Enabled = isEnabled
    a9.Enabled = isEnabled
End Sub
现在,您可以一次管理整个块:

SetABlockEnabled(True)

Coehoorn有最好的方法,但作为初学者,你可能想要最简单的方法,所以我给你

您可以让Sub在您的位置执行此操作,这样您就不必一直编写所有按钮的名称

这里有一种方法可以做到:

Private Sub SetABlockEnabled(ByVal isEnabled As Boolean)
    a1.Enabled = isEnabled
    a2.Enabled = isEnabled
    a3.Enabled = isEnabled
    a4.Enabled = isEnabled
    a5.Enabled = isEnabled
    a6.Enabled = isEnabled
    a7.Enabled = isEnabled
    a8.Enabled = isEnabled
    a9.Enabled = isEnabled
End Sub
现在,您可以一次管理整个块:

SetABlockEnabled(True)

谢谢你,我上过一些私人课,但从没想过要全部上!谢谢你,我上过一些私人课,但从没想过要全部上!非常感谢,我今天要试一试!非常感谢,我今天要试一试!