如何从VB.Net调用C#事件
本文关键字:调用 事件 Net VB | 更新日期: 2023-09-27 18:24:44
我有一个C#类库。在该类中,我已将一个事件声明为属性
private static event MouseEventHandler s_MouseClick;
public static event MouseEventHandler MouseClick
{
add
{
s_MouseClick += value;
}
remove
{
s_MouseClick -= value;
}
}
我有另一个用VB.net写的项目,点击一个按钮,我想做这样的事情:
cls.MouseClick += cls_MouseClick;
void cls_MouseClick(object sender, KeyPressEventArgs e)
{
}
这就是我在C#中的做法。但是我如何在VB中做到这一点呢?
在VB中,要注册事件处理程序,请使用AddHandler
:
AddHandler cls.MouseClick, AddressOf cls_MouseClick
使用RemoveHandler
注销事件处理程序。
或者,您可以使用声明性语法。即:宣布成员如下:
Private WithEvents cls As YourClassType
并像这样声明处理程序:
Private Sub cls_MouseClick(ByVal sender As Object, ByVal e As KeyPressEventArgs) Handles cls.MouseClick
End Sub
现在您不需要手动注册处理程序。