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

标签 c# .net 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));
}

我已经尝试过:

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

但我收到此错误消息:CallEvent 是一个事件,无法直接调用,请使用 RaiseEvent 语句引发事件

我应该写什么?你能帮助我吗?谢谢。

最佳答案

使用 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

关于c# - 将事件从 C# 转换为 VB.Net...如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5988957/

相关文章:

java - 统一缩放特定点

c# - 如何正确映射 WebAPI 路由

javascript - 浏览器保存了我的 JavaScript 函数名称并干扰了我的网站

c# - System.Web.HttpContextBase' 不包含带有 Elmah 日志记录的 'Current' MVC 4 的定义

C# LINQ OrderBy 来自另一个列表的值 (IEnumerable)

c# - 使用反射的模糊异常

c# - 将描边应用于 TextBlock (Windows 8)

.net - 将字符串从 Delphi dll 传递到 .net

c# - 从 .Net Winform 应用程序访问 GPS 数据

c# - 使用 Microsoft 认知语音 API 和非麦克风实时音频流进行语音识别