我不确定这里出了什么问题,但我的图像没有显示出来。我的对象的所有其他属性都会显示出来,但图像永远不会加载。我已经在浏览器中尝试了该url,图像显示在那里。下面是我的代码:
使用MVVM Light,设置视图模型
DataContext="{Binding Main, Source={StaticResource Locator}}">我的xaml与数据绑定
<ItemsControl ItemsSource="{Binding AllItems}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel Height="200">
<!--<StackPanel.Background>
<ImageBrush ImageSource="PodImages\podstate-Clip.png" />
</StackPanel.Background>-->
<Image Source="{Binding ImageUri}"/>
<StackPanel Orientation="Horizontal">
<StackPanel>
<TextBlock Text="{Binding Summ}" FontSize="32" Foreground="Green"/>
<TextBlock Text="{Binding Brand}" FontSize="32" Foreground="Blue"/>
<TextBlock Text="{Binding L1}" Width="350" TextWrapping="Wrap" Foreground="Blue"/>
</StackPanel>
<TextBlock Text="{Binding Val}"/>
</StackPanel>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>我的数据模型
public class Offer
{
public long ID { get; set; }
public int Type { get; set; }
public string Summ { get; set; }
public string L1 { get; set; }
public string Brand { get; set; }
public string ImageUri { get; set; }
}我的数据服务回调。这是在按照预期设置我的收藏。ImageUri包含有效的uri。
private void OffersLoaded(OfferDetailsWithMsg offers)
{
AllItems = offers.Items.Where(item => item.Type == 0).ToList();
}最后是我的AllItems属性。是的,我正在调用RaisePropertyChanged (为简洁起见,删除了支持属性)
public List<Offers> AllItems
{
get
{
return _allItems;
}
set
{
if (_allItems == value)
{
return;
}
_allItems= value;
RaisePropertyChanged(AllItemsPropertyName);
}发布于 2012-05-29 14:23:33
啊,这些是Gif的,似乎不支持Gif。
发布于 2012-05-24 12:46:22
我认为您需要绑定到Uri而不是string。在Offer类中,尝试添加以下属性,并绑定到该属性。
public Uri ImgUri
{
get
{
return new Uri(ImageUri, UriKind.Absolute); //or relative, if it is relative
}
}https://stackoverflow.com/questions/10728155
复制相似问题