2016-03-21 19 views
0

私たちはしばしばその疑問にぶつかり、これに対する一般的な答えは見ませんでした。動的に作成されたコントロールでイベントを処理する方法は?

主な質問は次のとおりです。 プログラムでボタンのようなコントロールを作成していて、クリックイベントを処理したいのですが、どうすればいいですか?

+1

(http://stackoverflow.com/q/16245189)[ここ](http://stackoverflow.com/q/11312239) q/7375061)他の多くの – Plutonix

答えて

0

以下は、FlowLayOutPanelに配置されるボタンの1つで、多くのボタンを追加する場合は、フローパネルでこれを支援します。

Dim b As New Button With 
    { 
     .Name = "Button1", 
     .Text = "Press me", 
     .Size = New Size(100, 100), 
     .Location = New Point(25, 30), 
     .Parent = FlowLayoutPanel1, 
     .Visible = True 
    } 

AddHandler b.Click, Sub(s As Object, e As EventArgs) 
         Dim bnt = CType(s, Button) 
         If bmt.Name = "Button1" Then 
          MessageBox.Show(bnt.Text) 
         End If 
        End Sub 

FlowLayoutPanel1.Controls.Add(b) 

私が行っている(と共有して喜んでは)一度に多くのボタン1つを作成することができますクラスを作成しているが、キーボタンが名前を検査に降りてくるワンクリックイベントからクリックされた統合された何ダイナミックに作成されたボタンまたは同様のコントロールのタグ内の値であってもよい。

イベントが登録されている方には欠点があります。このイベントから退会する必要がある場合は、より多くの努力を要するので、マーティンが示したことは価値があります。イベントからの退会。

関連する問題