Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
2つのフォーム間でのユーザコントロールに対するアクセス
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=9086#CommentId11321
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
Kintonun
 (社会人)
投稿日時
2009/4/22 00:31:37
前略。言語はMicrosoft Visual Basic 2008 Express Editionです。
行いたいことの概略は以下の通りです。
frmAからfrmBに配置したユーザコントロールのプロパティーを変更したい。
msdnなど見ながら、以下のユーザコントローラを作りました。テストし、何とかfrmBのPanl1内に
貼り付けることが出来ました。
・ユーザコントロール名:uctRectにてプロパティーを作成
(ユーザコントロール用フォーム?にShapコントロールを貼り付けた)
Public class uctRect
Public Property shpLamp_BackColor() As Drawing.Color
Get
Return (shpLamp.BackColor)
End Get
Set(ByVal value As Drawing.Color)
shpLamp.BackColor = value
End Set
End Property
end Class
・別のプロジェクトにて、frmBのpanel1にuctRect0~uctRect69(70個)を貼り付けた。
・同ソリューション内にてfrmAにてfrmBにアクセスを行う。
frmA内ソフト
frmB.uctRect0.shpLamp_BackColor = Color.Red
にて、frmAからfrmBの色を変更できた。
この結果から、70個、この文を並べると何とかなりますが、ループを使って、一括で処理出来ない
のでしょうか?いろいろ参考にして、コントロール名まではアクセス出来ているようですが、プロパティー
へのアクセスが分かりません。ご助言頂けませんでしょうか?以下、検討したソフトを記載します。
For i=0 to frmB.panel1.Controls.Count-1
if frmB.panel1.Controls.Item(i).Name Like "uctRect*" then
この中でshpLamp_BackColor プロパティーに書き込みたい
End if
Next
最後に、専門用語が間違っていましたら、訂正願います。現在、50の手習いで勉強中です。