Windows-10 UWP绑定图像URL到ListView中的图像源

时间:2016-05-18 22:52:38

标签: windows xaml data-binding windows-10-universal

我正在将我的WinRT应用程序移植到UWP。我的应用程序尝试显示图像,从在线查询中收到的uri。我在XAML

中将它绑定到像这样的Image源
<Image  Source="{Binding ImageSrc}" Stretch="UniformToFill" />


应用程序无法从此uri获取图像。它只能显示应用程序容器中的图像( / Assets / 文件夹中的任何内容)
我从在线查询中收到的uri是有效的。我通过在浏览器中粘贴uri来验证。浏览器能够获取&amp;显示来自uri的图像。
我在Data Binding in WPF上阅读了这篇文章。它至少表示如果 “ImageSrc是图像的有效uri的字符串表示” ,上述绑定将起作用。在我的情况下,ImageSrc是有效的uri

由于以上主题是针对WPF的,我不确定即使对于UWP也是如此。在这种情况下我还需要做些什么吗?

2 个答案:

答案 0 :(得分:9)

如果您正在寻找基于XAML的绑定,请按以下方式进行:

<p:selectCheckboxMenu
                            label=""
                            id="cboBiblioteca" 
                            filter="true" filterMatchMode="contains"
                            required="false"
                            widgetVar="cboBiblioteca"
                            value="#{documentalBean.sbiblioteca}"
                            style="width:20px">
                            <p:ajax event="change" listener="#{documentalBean.checkBiblioteca()}"/>
                            <f:selectItems value="#{bibliotecaBean.bibliotecas}" var="biblioteca"  itemLabel="#{biblioteca.NOMBRE_BIBLIOTECA.toLowerCase()}" itemValue="#{biblioteca.ID_BIBLIOTECA_MEDIADOR}"/>
                        </p:selectCheckboxMenu>

答案 1 :(得分:5)

我可以给你一个替代方案。 您可以从代码隐藏文件中设置图像源。 Url不会使用Image标记的“source”属性直接呈现。 您必须先将URL转换为位图图像,然后将source属性设置为该Bitmap对象

试试这个,

Image.Source = new BitmapImage(
new Uri("http://yourdomain.com/image.jpg", UriKind.Absolute));

如此问题所示 Programmatically set the Source of an Image (XAML)