我在将一个例子从C#转换为VB.NET时遇到了问题。
C#示例具有以下结构。 首先是公共代表。
public delegate void CustomEventHandler(object sender , EventArgs e);
此委托连接到接口的属性。
public interface ICustom {
CustomEventHandler MyProperty { get; set; }
}
最后,我得到了一个包含接口作为参数的函数的类。使用函数等参数调用此属性。
public class Test {
public void MySub(ICustom custom) {
custom.MyProperty(this, new EventArgs()); }
}
我可以转换此代码,但使用该属性除外。我的VB.NET代码如下所示:
Public Delegate Sub CustomEventHandler(ByVal sender As Object, ByVal e As EventArgs)
Public Interface ICustom
Property MyProperty As CustomEventHandler
End Interface
Public Class Test
Public Sub MySub(ByVal custom As ICustom)
... How can I add here the event OnEvent to the event custom.MyEvent? ...
End Sub
End Class
是否可以转换它或是否有其他必要的方法。 感谢您的回复。
答案 0 :(得分:0)
对于在VB.NET中触发事件,您必须使用RaiseEvent
http://msdn.microsoft.com/en-us/library/edzehd2t.aspx?cs-save-lang=1&cs-lang=vb#code-snippet-1