我需要帮助将ac#匿名方法转换为vb.net

provider.OptionsSet += delegate { provider.FinishedLoading(); }; 

好的演示如何转换器如此严重错误,他们有很长一段时间。 + =运算符不是VB.NET语法,订阅事件需要AddHandler。 Do来自哪里是任何人的猜测。 lambda不能是Function,除了委托类型返回值的极少数情况。 在一行中有三个错误,你没有机会。 你需要VS2010写一个Sub lambda。 像这样:

 Module Module1 Sub Main() Dim obj As New Test AddHandler obj.example, Sub(sender As Object, e As EventArgs) '' etc... End Sub End Sub End Module Class Test Public Event example As EventHandler End Class 

对于早期版本,您需要一些非匿名帮助方法。 像这样:

  AddHandler obj.example, AddressOf helper ... Sub helper(ByVal sender As Object, ByVal e As EventArgs) '' etc.. End Sub 

人类1,机器0。

Pete Brown也有一​​个内联子的例子:

http://10rem.net/blog/2010/04/16/tip-anonymous-event-handlers-in-vbnet

 provider.OptionsSet += Function() Do provider.FinishedLoading() End Function 

这取自http://www.developerfusion.com/tools/convert/csharp-to-vb/ ,所以我没有测试过。 如果您能够提供更多上下文,那可能会更有帮助。 这是用来做什么的?