将事件从C#转换为VB.Net ...如何?

Luc*_*ini 2 .net c# vb.net events

我必须将C#代码转换为VB.NET,但我有一些问题....你能帮助我吗?

这是C#源代码:

public static event ValueEnterEventHandler CallEvent;

public static void DispatchCompanyCall(string moduleName)
{
     if (IsReady && CallEvent != null)
           CallEvent(null, new ValueEnterEventArgs(moduleName, false));
}
Run Code Online (Sandbox Code Playgroud)

我试过这个:

Public Shared Event CallEvent As ValueEnterEventHandler

Public Shared Sub DispatchCompanyCall(moduleName As String)
    If IsReady AndAlso CallEvent IsNot Nothing Then
        CallEvent(Nothing, New ValueEnterEventArgs(moduleName, False))
    End If
End Sub
Run Code Online (Sandbox Code Playgroud)

但我有这个错误消息:CallEvent是一个事件,不能直接调用,使用RaiseEvent语句来引发一个事件

我该怎么写?你能帮助我吗?谢谢.

Jar*_*Par 5

使用VB.Net,无需为null/ 检查事件Nothing,您只需通过RaiseEvent关键字直接引发它们

Public Shared Sub DispatchCompanyCall(moduleName As String)
    If IsReady Then
        RaiseEvent CallEvent(Nothing, New ValueEnterEventArgs(moduleName, False))
    End If
End Sub
Run Code Online (Sandbox Code Playgroud)