首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VB Dotnet >

怎么循环窗体的所有控件

2012-02-10 
如何循环窗体的所有控件?我的窗体中有各种各样的控件,包括子控件,例如TabControl控件中有button、textbox等

如何循环窗体的所有控件?
我的窗体中有各种各样的控件,包括子控件,例如TabControl控件中有button、textbox等等,又例如TabControl中又有TabControl。

我的代码如下:
Dim   ctl   As   Control
For   Each   ctl   In   Me.Controls
        Debug.Print   (ctl.Name)
Next

上面的方法只能找到窗体的直属控件,页框控件TabControl中的子控件找不出来
请问如何把所有(包括子控件)控件找出来?
能不能把不可见控件也找出来?例如Timer、ImageList等等。

[解决办法]
if ctr.HasChildren then
....
Call getctlName() '递归之

[解决办法]
用递归调用,根据control.controls.count> 0判断控件内是否有子控件,就象递归循环多个子节点的treeview树一样。

[解决办法]
PrintName(Me)


Private Sub PrintName(ByVal f As Control)
Dim ctl As Control
For Each ctl In f.Controls
Debug.Print(ctl.Name)
PrintName(ctl)
Next

End Sub

*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码)

最新版本:20070130

http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html

热点排行