Windows-10 UWP 将图像 url 绑定到 ListView 中的图像源
Posted
技术标签:
【中文标题】Windows-10 UWP 将图像 url 绑定到 ListView 中的图像源【英文标题】:Windows-10 UWP Binding Image url to Image source in ListView 【发布时间】:2016-09-15 15:11:12 【问题描述】:我正在将我的 WinRT 应用程序移植到 UWP。我的应用程序尝试显示图像,其 uri 是从在线查询中接收的。 我在 XAML 中将它绑定到像这样的图像源
<Image Source="Binding ImageSrc" Stretch="UniformToFill" />
应用无法从此 uri 获取图像。它只能显示应用容器中存在的图像(/Assets/ 文件夹中的任何内容) 我从在线查询中收到的 uri 是有效的。我通过在浏览器中粘贴 uri 验证了这一点。浏览器能够从 uri 获取并显示图像。 我在 Data Binding in WPF 上阅读了这篇文章。它至少说,如果 “ImageSrc 是图像的有效 uri 的字符串表示”,则上述绑定将起作用。 ImageSrc 在我的情况下是有效的 uri 由于上述线程是针对 WPF 的,我不确定即使对于 UWP 是否也是如此。在这种情况下,我还需要做些什么吗?
【问题讨论】:
【参考方案1】:如果您正在寻找基于 XAML 的绑定,方法如下:
<Image>
<Image.Source>
<BitmapImage UriSource="Binding ImageSource" />
</Image.Source>
</Image>
【讨论】:
在ImageSource
的情况下,我建议在Binding 中使用FallbackValue=null
以始终拥有流畅的Designer。 <BitmapImage UriSource="Binding ImageSource, FallbackValue=null" />
【参考方案2】:
我可以给你一种选择。 您可以从代码隐藏文件中设置图像源。 Url 不使用 Image 标签的“source”属性直接呈现。 您必须先将 URL 转换为位图图像,然后将源属性设置为该位图对象
试试这个,
Image.Source = new BitmapImage(
new Uri("http://yourdomain.com/image.jpg", UriKind.Absolute));
正如这里的问题所见 Programmatically set the Source of an Image (XAML)
【讨论】:
嗨@Rachhek,感谢您的回复。看起来你的答案也是有效的。但我一直在寻找基于 XAML 的绑定,因此接受了上面 Konstantin 的回答。以上是关于Windows-10 UWP 将图像 url 绑定到 ListView 中的图像源的主要内容,如果未能解决你的问题,请参考以下文章