2012-05-26 20 views
0

我有我的JSON請求抓取URI,甚至可以把項目綁定,但不是圖像。從JSON獲取圖像URL到列表框綁定

XAML:

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

現在,一旦我得到的飼料我運行它像這樣:

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; } 

    } 

進料/ ChannelImages執行此:

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

ChannelImages報告一個ImageUrl和一堆其他數據,但我需要嚴格的ImageUrl,但似乎即使在XAML,如果我把ImageUrl它不會工作,但我如何使用ChannelImages獲取ImageUrl?

感謝您的幫助!

+0

在哪裏存儲的圖像? –

+0

圖像存儲在JSON供稿鏈接的任何位置(例如,ImageUri可能有圖像URL轉到Google圖像)。 – user1239234

回答

0

您應該將字符串轉換爲ImageURL,而不是像您現在所做的那樣將對象列表轉發。

一切工作正常使用此代碼你現在,你頻道類應該是這個樣子:

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

唯一的問題是飼料看起來像這樣(或者看上面,我格式化它以便於閱讀): 「ChannelImages」:[ { 「ImageUrl」:「http://image-url-generated.com/ imagename.png「, 」ImageUseType「:null, – user1239234

+0

您可以在這裏生成所需的類:http://json2csharp.com/ – user1364259

+0

我實際上是從該網站生成類(就像我使用所有的JSON Feed一樣)。不幸的是仍然沒有捕獲ImageUrl。 – user1239234