我有一个C#类库.在那堂课里,我把一个事件宣布为一个财产
private static event MouseEventHandler s_MouseClick;
public static event MouseEventHandler MouseClick
{
add
{
s_MouseClick += value;
}
remove
{
s_MouseClick -= value;
}
}
Run Code Online (Sandbox Code Playgroud)
我有另一个用VB.net编写的项目,点击一个按钮我想做这样的事情:
cls.MouseClick += cls_MouseClick;
void cls_MouseClick(object sender, KeyPressEventArgs e)
{
}
Run Code Online (Sandbox Code Playgroud)
这就是我在C#中的表现.但是我如何在VB中做到这一点?
在VB中,要注册事件处理程序,请使用AddHandler:
AddHandler cls.MouseClick, AddressOf cls_MouseClick
Run Code Online (Sandbox Code Playgroud)
使用RemoveHandler注销事件处理程序.
或者,您可以使用声明性语法.即:声明成员如下:
Private WithEvents cls As YourClassType
Run Code Online (Sandbox Code Playgroud)
并声明这样的处理程序:
Private Sub cls_MouseClick(ByVal sender As Object, ByVal e As KeyPressEventArgs) Handles cls.MouseClick
End Sub
Run Code Online (Sandbox Code Playgroud)
现在您不需要手动注册处理程序.
| 归档时间: |
|
| 查看次数: |
764 次 |
| 最近记录: |