- - PR -
【VS2005 動的に作成したコントロールの探し方について】
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-10-19 21:09
開発環境
VisualBasic2005 フォーム上に動的にコントロールを作成しています。 コントロール作成後にそのコントロールを参照する方法が分からないのですが、 何か良い方法を知っている方、いらっしゃいませんでしょうか? 当方、初心者で知識不足ですが、宜しくお願い致します。 | ||||
|
投稿日時: 2006-10-19 21:15
自分で動的に作成しているのだから、インスタンスは自分で管理できますよね。 名前で検索する方法もありますが、コンパイル解決できていないのでお勧めできません。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2006-10-19 23:14
ダッチです。
うたさん、どのようにインスタンスを管理しましょうか。 ![]() コントロールが動的に作成されるので、複数のコントロールを管理しなくてはなりませんね。 複数のオブジェクトを扱うといったらコレクションが最適ですね。 ![]() コレクションといってもいろいろありますけど、 作成するコントロールの型が同じなら List(Of 作成するコントロールの型) などいいのではないでしょうか。 ![]() 後はコントロールを作成するたびに List へ Add すればインスタンスはいつでも参照できます。 ![]() | ||||
|
投稿日時: 2006-10-19 23:42
作成というのは、オブジェクトを生成しているという意味ですよね? 生成したオブジェクトを参照すれば良いということではないのでしょうか? _________________ R・田中一郎 - R.Tanaka.Ichiro’s Blog | ||||
|
投稿日時: 2006-10-20 00:17
その説明だと幾通りにも解釈できてしまうので、適切にアドバイスするのは難しいです。 実際どのようなコードを書いていて、どうしたいのかを具体的に書いてください。 _________________ 囚人のジレンマな日々 | ||||
|
投稿日時: 2006-10-20 03:44
予想。
Me.Controls.Add(New 〜) で、その対策。 Private 〜用の変数 As New 〜 Me.Controls.Add(〜用の変数) | ||||
|
投稿日時: 2006-10-20 08:25
返信が遅くなってしまいまして申し訳ございません。
説明も不足しておりましたので、詳細を説明いたします。 1、デザイナでWindowsフォームにTabControlを用意しておきます。 2、プログラムでTabControlの1ページ目にTabControlを生成します。 3、データベースより情報を読込み、抽出した分類の数だけ、2で生成した TabControlにTabPageを生成します。 4、3で生成したTabPageにさらにTabControlを生成し、3の手順を行います。 5、4で生成したTabPageにDataGridViewを生成します。 2のコード------------------------------------------------- Dim txtTest1 As New TextBox txtTest1.Name = "txtTest" txtTest1.Location = New System.Drawing.Point(50, 50) Me.TabControl2.TabPages(0).Controls.Add(txtTest1) ------------------------------------------------------------ 2をFormLoad時に行っています。 その後に3を行いたいのですが、生成したコントロールを探せないので 3以降に進めずにいます。 まず、皆さんからアドバイスいただいた方法を一づつ試してみます。 ご教授いただきましてありがとうございます。 試した結果はまた書き込みさせて頂きます。 | ||||
|
投稿日時: 2006-10-20 18:19
じゃんぬねっとさん、ダッチさんから教えていただいた通り、
インスタンスをListで管理することで、動的に生成したコントロ ールを参照する事ができるようになりました。 皆さん本当にありがとうございました。 |
1