0

フォームに動的に追加されるラベルがあり、各ラベルのタグの下にリンクがあります。動的ラベルもありますが、AddHandler lbTitle.Clickこれを実行しようとすると機能しません。

Private Sub lbTitle_Click(ByVal sender As Object, ByVal e As EventArgs)
    Process.Start(e.Tag)
End Sub

なぜなら

「タグ」は「System.EventArgs」のメンバーではありません

動的に追加されたラベルをクリックすると、ラベルのタグからURLが起動するように、これを解決するにはどうすればよいですか。

4

2 に答える 2

0

イベントハンドラーを追加するには、オペレーターが必要ですAddressOf

AddHandler lbTitle.Click, AddressOf lbTitle_Click 

イベントハンドラーでのへの参照を取得するには、引数Labelを使用できます。sender

Private Sub lbTitle_Click(ByVal sender As Object, ByVal e As EventArgs)
    Dim label = DirectCast(sender, Label)
    Process.Start(label.Tag.ToString())
End Sub
于 2012-07-27T19:24:20.210 に答える
0

送信者引数はラベルですが、そのプロパティLabelにアクセスする前に、型にキャストする必要があります。Tag

Process.Start(CType(sender, Label).Tag)

または、任意のタイプのコントロールを処理するために、代わりに基本のコントロールタイプにキャストできます。

Process.Start(CType(sender, Control).Tag)
于 2012-07-27T19:25:14.517 に答える