我想调用 PictureDecoder.DecodeJpeg() 来解码图像流,但似乎我必须在主 UI 线程中调用它,否则它会引发“无效的跨线程访问”。例外。
Stream imageStream = serivce.GetPicture();
WriteableBitmap bitmap = PictureDecoder.DecodeJpeg(imageStream);
...
我必须将它移动到 Dispatcher 主体,如下所示,在这里我认为我的代码中没有涉及 UI 控件,这就是为什么?
Deployment.Current.Dispatcher.BeginInvoke(() =>
{
Stream imageStream = serivce.GetPicture();
WriteableBitmap bitmap = PictureDecoder.DecodeJpeg(imageStream);
...
});