在 WP7 应用程序中,我正在调用一些代码来从 ScheduledAgent 类上的 onInvoke 方法更新实时磁贴。
获得无效的跨线程错误。
它失败的线路是
var fontForeground = new SolidColorBrush(Colors.White);
我知道有一些限制 ans API 是我无法从这个后台任务中调用的,但我只是想设置一些东西来生成我自己的图像以显示在实时磁贴上。
有什么明显的我在这里做错了。
更新...
我发现了这个问题
How can I render text on a WriteableBitmap on a background thread, in Windows Phone 7?
这与我遇到的问题相同,虽然这里有一些很好的对话,但似乎没有一种简单的方法可以解决这个问题?
最佳答案
使用 Dispatcher
在 UI 线程上而不是在后台线程上执行代码:
Deployment.Current.Dispatcher.BeginInvoke(()=>
{
fontForeground = new SolidColorBrush(Colors.White);
...
});
关于windows-phone-7 - WP7 无效的跨线程访问 - ScheduledTaskAgent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7428260/