【问题标题】:get BitmapImage from Web URI从 Web URI 获取 BitmapImage
【发布时间】:2011-01-17 09:00:32
【问题描述】:

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

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

关于如何在后台下载图片有什么想法吗?

谢谢

阿米特

【问题讨论】:

  • 您能举例说明您下载和绑定的方法吗?

标签: silverlight image windows-phone-7 bitmapimage


【解决方案1】:

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

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

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

Keep a low profile (LowProfileImageLoader helps the Windows Phone 7 UI thread stay responsive by loading images in the background

【讨论】:

    【解决方案2】:

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

    WebClient, HttpWebRequest and the UI Thread on Windows Phone 7

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-14
      • 1970-01-01
      • 1970-01-01
      • 2021-03-29
      • 1970-01-01
      • 1970-01-01
      • 2014-06-06
      • 1970-01-01
      相关资源
      最近更新 更多