我在使用C#中的匿名委托Lambda时遇到了问题。我把程序转换为C#5后,委托出现了问题。非常感谢能提供帮助。具体错误信息如下:
无法将lambda表达式转换为类型“Delegate”,因为它不是一个委托类型
public void UpdateUserList()
{
if (!Monitor.TryEnter((object)this.LvPerson, 150))
return;
if (this.InvokeRequired)
{
this.Invoke((Delegate) (() => this.UpdateUserList()));
}
else
{ ... }
}
我也尝试过
this.Invoke(() => {this.UpdateUserList();});
我无法确定问题出在哪里,因为在将项目从Visual Studio 2008移动到Visual Studio 2015之前,它是可以工作的。
再次感谢您的帮助!
this
指的是什么?Invoke() 的方法签名是什么? - sara