0

我只是想在 VB 的一行中异步执行一个原本阻塞的方法。

Dim action As New Action(Sub() MessageBox.Show("Hello"))
action.BeginInvoke(Nothing, Nothing)

在 C# 中:

(new Action(() => MessageBox.Show("Hello"))).BeginInvoke(null, null);

翻译成VB

(New Action(Sub() MessageBox.Show("Hello"))).BeginInvoke(nothing, nothing)

不编译。以括号开头的行时出现语法错误。

有什么解决办法吗?如果是,是什么?如果没有,为什么不呢?谢谢!

4

1 回答 1

3

我刚刚尝试过,没有遇到任何问题:

Dim a = (New Action(Sub() MessageBox.Show("Hello"))).BeginInvoke(Nothing, Nothing)
于 2013-01-15T16:50:53.583 回答