DOBON.NET DOBON.NETプログラミング掲示板過去ログ

フォーム上のコントロール取得

環境/言語:[WindowsXP,VB.NET,.NET Framework1.1]
分類:[.NET]

はじめまして。

VB.NETでFORM上にGroupBoxを使用し、その中にテキストやラベルなどを配置しています。
FORM上のコントロール全てを取得したいのですが、よい方法はないでしょうか。

フォール上のコントロールを取得し、For Eachでコントールの数だけ回し、
GroupBoxコントロールの場合は、さらにGroupBoxのコントロールでまわしたり試してみたのですが、
GroupBoxの中にGroupBoxがあったらなどを考えていたらどんどん複雑になってしまいました。

どなたかご存知の方がおられたら、アドバイスを頂けたらと思いまして
投稿いたしました。宜しくお願い致します。
どぼんサイトに質問よくするいがりんちゃんです。
たぶん、こんな感じ?

Private Sub Start_Click()
GO(Me.Controls)
End Sub

Private Sub GO(ByVal A As Control.ControlCollection)
For Each B As Control In A
If B.HasChildren Then
GO(B.Controls)
Else
MessageBox.Show(B.Name)
End If
Next
End Sub
いがりんちゃん様

回答ありがとうございます。
早速試してみました。

私が試したロジックよりすっきりいて、
FORM上のコントロールを取得することが出来ました。

勉強になります。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板