1

我在我的 Windows Phone 应用程序中有几个绑定到 uri 的图像,这会导致在下载所有图像时 UI 线程被阻止。我无法在不同的线程上创建 bitmapImage 实例,因为我会得到“无效的跨线程操作”异常。

我尝试使用 WebClient 下载图像,但没有接受 BitmapImage 流的构造函数。

关于如何在后台完成下载图像的任何想法?

谢谢

阿米特

4

2 回答 2

2

为了使用 aStream为 a 提供内容,BitmapImage您使用默认构造函数创建一个实例,然后调用SetSource传递流:-

  var bi = new BitmapImage();
  bi.SetSource(myStream);

但是我认为你可能在这里重新发明轮子。看看下面的链接:-

保持低调(LowProfileImageLoader 通过在后台加载图像来帮助 Windows Phone 7 UI 线程保持响应

于 2011-01-16T20:19:23.420 回答
0

您仍在使用 WebClient 的 UI 线程上。如果您继续采用这种方法,您还可以考虑使用 HttpWebRequest。这是一个工作示例,包括无效跨线程访问异常的解决方法。

Windows Phone 7 上的 WebClient、HttpWebRequest 和 UI 线程

于 2011-01-17T01:00:32.823 回答