- - PR -
GroupBox内の順序について
1
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-03-29 14:45
さかもとと申します。
VS2005(VB) WINフォーム にて開発をしています。 GroupBox内に配置されたコントロール各種を 表示順(画面の上から)にリストにセットし て行きたいと考えており 例)GroupBox1内に 1番目→テキストボックス 2番目→コンボボックス ・ ・ ・ n番目→○×コントロール と配置しています
とし、順序良く取得していこうとしたところ、 GroupBox1.Controls(0).GetType()→"System.Windows.Forms.ComboBox" GroupBox1.Controls(1).GetType()→"System.Windows.Forms.Label" GroupBox1.Controls(2).GetType()→"System.Windows.Forms.MaskedTextBox" ・ ・ と最初にComboBoxコントロールを取得してしまいます。 コントロールの文字列を昇順で取得しているように見える のですが、例でいうとtextboxコントロールを取得したいと 考えています。 何かよい方法をご存知の方がいらっしゃればご教授頂ければ と思います。 宜しくお願いいたします。 | ||||||||||||
|
投稿日時: 2006-03-29 15:01
普通は TypeOf を使ってコンパイル解決を図ります。 最近くどいように言っていますが、その書き方は型の検証ではなりません。 文字列の検証に他なりません。
いいえ、いわゆる ZOrder 順に取得されるハズです。 通常の場合、これはコントロールのメンバが定義されている順番どおりです。
これは、For Each を使うべきですね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||
|
投稿日時: 2006-03-29 15:02
自分でも忘れていたのですが、以下がそのままの Tips ですね。 フォーム内のすべてのテキストボックスをクリアする ClearTextBox([ここに GroupBox のインスタンス]) です。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||
|
投稿日時: 2006-03-29 15:15
じゃんぬねっと様
すいません、本日2度目のお礼です。 ありがとうございました。 >最近くどいように言っていますが、その書き方は型の検証ではなりません。 この方法以前どこかで参考にさせて頂いてから使用して いるので違和感なく使ってはいたのですが、ご指摘頂くと確かに おっしゃる通りだと思います。 早速、TIPSを参考にさせて頂きます。 ありがとうございました。 |
1