VB.NET, C#, PowerShellを使用しているエンジニアのためのサイト。
基本的な使用方法から開発で役立つTipsまで幅広く取り扱っています。
<< 前のTips 次のTips >>
VB6ではコントロール配列がありましたが、.NETでは無くなってしまいました。フォーム上に配置されたコントロールを配列で管理するサンプルを紹介します。
手順
1)ボタンを10個管理するために、配列で宣言する
2)フォーム上の10個のボタンを配列に格納する
3)For ~ Nextで10個のボタンにイベントを登録
3-1)イベントハンドラの登録
イベントハンドラはAddHandlerで登録します。
AddressOfの右側に結びつけるメソッド名を記述します。
4)クリックされたボタンを特定する
引数「sender」には、呼び出しもとのコントロールの情報が入っています。
CType(sender,Button)とすることで、呼び出しもとのボタンのプロパティをすべて取得することができます。
ここでは、Textプロパティを取得して、MessageBox.Showで確認しています。
'1)ボタン10個分の配列を準備 Private btnArray(9) As Windows.Forms.Button Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim I As Integer '2)フォーム上の10個のボタンを配列に格納する btnArray(0) = Button1; btnArray(1) = Button2; btnArray(2) = Button3; btnArray(3) = Button4; btnArray(4) = Button5; btnArray(5) = Button6; btnArray(6) = Button7; btnArray(7) = Button8; btnArray(8) = Button9; btnArray(9) = Button10; For I = 0 To 9 '3-1)イベントハンドラの登録 AddHandler btnArray(I).Click, AddressOf ButtonClick Next End Sub Private Sub ButtonClick(ByVal sender As Object, ByVal e As System.EventArgs) '4)クリックされたボタンを特定する MessageBox.Show(CType(sender, Button).Text) End Sub
<< 前のTips 次のTips >>