c#代码相当于VB.net
本文关键字:net VB 相当于 代码 | 更新日期: 2023-09-27 18:04:22
从c#代码到VB.net代码的等价性是什么?
public void RaiseTotalTimeEvent(TotalTimeEventArgs e)
{
EventHandler<TotalTimeEventArgs> temp = TotalTimeEvent;
if (temp != null)
{
temp(this, e);
}
}
编辑谢谢你的回答。
但是所有的答案看起来都是使用一些现有的CODE转换器转换的。我尝试过Telerik、DeveloperFusion等。所有这些工具都会生成如下所示的相同代码,但它们都不起作用。转换代码。
Public Sub RaiseTotalTimeEvent(e As TotalTimeEventArgs)
Dim temp As EventHandler(Of TotalTimeEventArgs) = TotalTimeEvent
RaiseEvent temp(Me, e)
End Sub
编译器报告此错误:
错误8 'Public Event CountEvent(sender As Object, e As)CountEventArgs)'是一个事件,不能直接调用。使用一个'RaiseEvent'语句引发事件。
您应该避免自动将代码从一种语言翻译成另一种语言。相反,你应该学会理解和重写代码,用你喜欢的语言来解决问题。
但是有翻译。http://www.developerfusion.com/tools/convert/csharp-to-vb/
我想它会是这样的。
Public Sub RaiseTotalTimeEvent(e As TotalTimeEventArgs)
Dim temp As EventHandler(Of TotalTimeEventArgs) = TotalTimeEvent
RaiseEvent temp(Me, e)
End Sub
您可以通过使用一些在线c#到VB转换工具轻松完成。下面是等效的VB代码。
Public Sub RaiseTotalTimeEvent(e As TotalTimeEventArgs)
Dim temp As EventHandler(Of TotalTimeEventArgs) = TotalTimeEvent
RaiseEvent temp(Me, e)
End Sub
查看这里的自动转换器:http://www.developerfusion.com/tools/convert/csharp-to-vb/
Public Sub RaiseTotalTimeEvent(e As TotalTimeEventArgs)
Dim temp As EventHandler(Of TotalTimeEventArgs) = TotalTimeEvent
RaiseEvent temp(Me, e)
End Sub
省略if,但这应该很简单。