循环通过动态创建的控件

时间:2013-03-21 19:19:10

标签: vb.net loops button runtime

我有许多动态创建的按钮(在运行时生成的按钮),还有许多动态创建的面板。我想做类似下面的代码,虽然我知道这段代码不起作用。

For i = 1 to NumberOfButtons
    button(i).top = panel(i).top
next

按钮名为button1,button2等。面板也被命名为panel1,panel2等。 这些都是用VB Express 2008编写的。

3 个答案:

答案 0 :(得分:0)

For i As Integer = 1 To theTopNumber
  Me.Controls("button" & i.ToString).Top = Me.Controls("panel" & i.ToString).Top
Next

答案 1 :(得分:0)

生成按钮和面板时,需要将它们存储到数组中。然后,您可以通过索引访问它,就像您在代码示例中一样。另一个选择是通过Me.Controls("button1")和类似的方式来做,但我会考虑这个糟糕的编码。

答案 2 :(得分:0)

这不行吗?

For Each btn As Button In Me.Controls
    For Each pnl In Me.Controls
        btn.Top = pnl.Top
     Next
Next

请(如果您满意)投票或标记作为答案,因为我神秘地被禁止没有特别的理由。重新启用它可能会有所帮助:/