如何在vb.net中循环访问groupbox

时间:2017-01-15 03:32:02

标签: vb.net

在我的VB.NET表单中,我有50个组框,每个组框包含一个名为volt的组合框。我使用此代码为所有组合框添加值:

For count = 1 To 50
    Dim volt = DirectCast(Me.Controls("volt" & count & ""), ComboBox)
    volt.Items.Add("what a code")
Next

但它们被放置在不同的组框中。当我像这样重写它时:

For count = 1 To 50
    Dim volt = DirectCast(groupbox1.Controls("volt" & count & ""), ComboBox)
    volt.Items.Add("what a code")
 Next

它只适用于groupbox1。如何影响剩余的组框?

1 个答案:

答案 0 :(得分:1)

这样的事可能对你有用(实际上是jmcilhinney建议):

 For Each ctl As Control In Me.Controls
     For Each cmb As Combobox In ctl.Controls.OfType(Of Combobox)()
        cmb.Text = "Volt"
     Next
 Next

但请注意这一点 - 如果您的Groupbox在容器(如Panel或Split Container)中,请在其中执行循环,而不是In Me.Controls。