0

从 Windows 8 类库中,如果我尝试更新我的 UI,我会收到此错误: The application called an interface that was marshalled for a different thread.我无法解决问题,因为Dispatcher.RunAsync方法不可用。

4

1 回答 1

0

不是从其他线程更新 UI 的好方法。

为什么 Dispacher.RunAsync 不可用?

this.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
{
  YourMethod();
});

或尝试用作等待任务:

this.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
{
  YourMethod()();
}).AsTask().Wait();

**this** is reference to **Window.Current**.
于 2013-03-05T08:03:25.310 回答