0

我的表单上有大约 10 个按钮,我希望它们调用相同的 Click 事件处理程序。

但为此我需要通用事件处理程序,并且我们在 VB.NET 中没有“this”关键字来引用导致事件的控件。

如何在 VB.NET 中实现“this”关键字的功能?

我希望能够编写一个执行以下操作的事件处理程序:

Private Sub cmdButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdButton1.Click

    currentTag = this.Tag

End Sub
4

4 回答 4

7

如何在 VB.NET 中实现“this”关键字的功能?

thisMe在VB中调用。但是,这与您的代码无关,而是指包含类,在您的情况下很可能是当前的Form. 您需要访问sender对象参数,将其转换为Control

currentTag = DirectCast(sender, Control).Tag
于 2009-02-04T13:31:25.167 回答
1

VB.NET中,Me相当于 C# 的this.

于 2009-02-04T13:31:10.550 回答
0

我想你想要Me关键字。

于 2009-02-04T13:31:16.760 回答
0

在 VB.NETthis中称为me,关于 VB.NET 处理程序的第二个问题的解决方案是:您可以在语句Handles末尾添加,例如:Private Sub

Private Sub cmdButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
    Handles cmdButton1.Click, 'cmdButton2.click, cmdButton3.click'

    currentTag = this.Tag

End Sub
于 2009-04-16T19:50:45.910 回答