我有这样的问题: 有一些方法
private List<int> GetStatusList()
{
return (List<int>)GetValue(getSpecifiedDebtStatusesProperty);
}
要在主线程中调用它 - 我使用
`delegate List<int> ReturnStatusHandler();` ...
this.Dispatcher.Invoke(new ReturnStatusHandler(GetStatusList));
如何使用lambda表达式代替自定义委托和方法?
答案 0 :(得分:13)
你可以通过这个:
new Action(GetStatusList)
或
(Action)(() => { GetStatusList; })
答案 1 :(得分:7)
您可以通过创建一个简单的方法来避免显式转换:
void RunInUiThread(Action action)
{
Dispatcher.Invoke(action);
}
使用如下:
RunInUiThread(() =>
{
GetStatusList();
});