- PR -

フォーム上のすべてのGUIコントロールを列挙(取得)したい

1
投稿者投稿内容
maru
ぬし
会議室デビュー日: 2003/01/27
投稿数: 412
投稿日時: 2004-07-29 07:16
いつもお世話になってます。

VB.NETで、フォーム上に貼り付けたすべてのGUIコントロールを列挙(取得)するようなこと
は出来ますか?

たとえば、フォーム上に貼り付けてあるすべてのGUIコントロールのフォームやサイズを変更
するためのクラスを作ろうと思ってます。

貼り付けてあるGUIコントロールをプログラマが1つ1つそのクラスにわたすのは現実的では
ないので、そのクラスに目的のフォームをわたすとそのクラスのメソッド内でフォームに貼り
付けてあるGUIコントロールを列挙してフォントやサイズ変更をしたいと思っています。

何かご存知の方おられませんでしょうか?
maru
ぬし
会議室デビュー日: 2003/01/27
投稿数: 412
投稿日時: 2004-07-29 07:45
自己レスです。

Controlsプロパティでsystem.Windows.Forms.Control.ControlCollectionが取れました。
これでいけそうでした。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-07-29 07:54
引用:

maruさんの書き込み (2004-07-29 07:45) より:

Controlsプロパティでsystem.Windows.Forms.Control.ControlCollectionが取れました。
これでいけそうでした。


 過去にもスレッドがいくつかありますが、各コントロールが持つプロパティを見て、潜ってくださいね。例えば、FormにPanelを置いて、TextBoxを置くと、FormからはTextBoxが見えません。FormにあるPanelから見ることができます。
かずくん
ぬし
会議室デビュー日: 2003/01/08
投稿数: 759
お住まい・勤務地: 太陽系第三惑星
投稿日時: 2004-07-29 08:46
Jittaさんの回答から、察しはついていると思いますが、子孫Controlを含めてすべてを列挙したい場合は、再帰的にControlCollectionをたどります。
maru
ぬし
会議室デビュー日: 2003/01/27
投稿数: 412
投稿日時: 2004-07-29 09:54
アドバイスありがとうございました。やってみます。
1

スキルアップ/キャリアアップ(JOB@IT)