for i = 0 to 10
dim paneln as new panel
paneln.backcolor = color.red
if i = 5 then
paneln.backcolor = color.white
end if
me.controls.add(paneln)
next
现在我想获得表格中每个面板的颜色
红色
红
红
红
白
红
红
红
红
红色
类似的东西:
For Each p As Panel In Me.Controls
MsgBox(p.BackColor)
Next
答案 0 :(得分:1)
如果您使用的是.Net 3.5或4.0,则可以尝试:
For Each p as Panel In Me.Controls.OfType(Of Panel)
MessageBox.Show(p.BackColor)
Next
这将仅遍历面板控件(或从Panel派生的控件),并忽略其他控件。请注意,这只会获取直接位于表单上的面板,而不会像其他面板那样获取容器对象内的任何面板。
答案 1 :(得分:0)
尝试:
For Each p As Panel In Me.Controls.OfType(Of Panel)()
MessageBox.Show(p.BackColor.ToString())
Next