从JSON获取图像URL到Listbox绑定

时间:2012-05-26 02:56:33

标签: c# json windows-phone-7 data-binding

我有我的JSON请求,它抓取URI,甚至可以将项目放在绑定中,但不是图像。

XAML:

 <Image delay:LowProfileImageLoader.UriSource="{Binding ImageUrl}" Width="120" Height="120" />
 <TextBlock Text="{Binding DisplayName}" FontSize="30" TextWrapping="Wrap" TextTrimming="WordEllipsis" />

现在,一旦我收到Feed,我就这样运行:

    using (var stream = new MemoryStream(Encoding.Unicode.GetBytes(e.Result)))
        {
            DataContractJsonSerializer dataContractJsonSerializer = new DataContractJsonSerializer(typeof(ProviderChannels.RootObject));
            var providerResult = (ProviderChannels.RootObject)dataContractJsonSerializer.ReadObject(stream);


            if (providerResult.ServiceDetailsResult != null)
            {

                ProviderChannels.ItemsSource = providerResult.ServiceResult.Lineup.Channels;

            }

问题是,我无法将图像从ImageUrl中获取:

    public class Channeli
    {
        public string DisplayName { get; set; }
        public List<object> ChannelImages { get; set; }

    }

Feed / ChannelImages执行此操作:

    "ChannelImages": [
                    {
                        "ImageUrl": "http://the-url-generated.com/file.png",
                        "ImageUseType": null,
                    }

ChannelImages报告了一个ImageUrl和一堆其他数据,但我需要严格的ImageUrl,但是如果我把ImageUrl放在XAML中它不起作用但是如何使用ChannelImages来获取ImageUrl?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您应该将字符串转发为ImageURL,而不是像现在这样的对象列表。

为了让您可以使用此代码正常工作,您的频道类应该如下所示:

 public class Channels
 {
     public string DisplayName { get; set; }
     public string ImageUrl { get; set; } 
 }