public void loadtemplist(DataTable dt)
{
this.Dispatcher.BeginInvoke(DispatcherPriority.ApplicationIdle,
(Delegate) (() => this.loadtemplist1(dt)) //error
);
}
和
public void loadtemplist1(DataTable dt)
{
-----
-----
}
上面的代码抛出无法将lambda表达式转换为类型' System.Delegate'因为它不是委托类型
答案 0 :(得分:1)
您无法将匿名方法直接转换为System.Delegate
- 您需要先将其包装在Action
中。
请改为尝试:
public void loadtemplist(DataTable dt)
{
this.Dispatcher.BeginInvoke(DispatcherPriority.ApplicationIdle,
new Action(() => { this.loadtemplist1(dt); } )
);
}
答案 1 :(得分:0)
你应该做
this.Dispatcher.BeginInvoke(DispatcherPriority.ApplicationIdle,
new Action(() => this.loadtemplist1(dt)) );