C# WP7向中心磁贴发布绑定文本和图像
我正在尝试将匹配的名称和图像绑定到中心磁贴中。数据来自输出JSON的api。反序列化数据并使用foreach循环将数据添加到类中没有问题。设置如下:C# WP7向中心磁贴发布绑定文本和图像,c#,windows-phone-7,xaml,C#,Windows Phone 7,Xaml,我正在尝试将匹配的名称和图像绑定到中心磁贴中。数据来自输出JSON的api。反序列化数据并使用foreach循环将数据添加到类中没有问题。设置如下: // Deserialize home page data public void jsonHome_GetDataCompleted(object snder, DownloadStringCompletedEventArgs e) { NewReleasesCharts homeData = JsonCo
// Deserialize home page data
public void jsonHome_GetDataCompleted(object snder, DownloadStringCompletedEventArgs e)
{
NewReleasesCharts homeData = JsonConvert.DeserializeObject<NewReleasesCharts>(e.Result);
foreach (FeaturedReleases release in homeData.results.featuredReleases)
{
int releaseID = release.id;
string releaseName = release.name;
string releaseImg = release.images.large.url;
new ReleaseLarge()
{
url = releaseImg
};
new FeaturedReleases()
{
id = releaseID,
name = releaseName
};
}
this.listRelease.ItemsSource = homeData.results.featuredReleases;
}
//反序列化主页数据
public void jsonHome\u GetDataCompleted(对象snder,下载StringCompletedEventArgs e)
{
NewReleaseSharts homeData=JsonConvert.DeserializeObject(如Result);
foreach(homeData.results.FeaturedRelease中的FeaturedRelease发布)
{
int releaseID=release.id;
字符串releaseName=release.name;
字符串releaseImg=release.images.large.url;
新版本大型()
{
url=releaseImg
};
新特性RELEASES()
{
id=释放id,
name=releaseName
};
}
this.listRelease.ItemsSource=homeData.results.FeaturedRelease;
}
这是我的课
public class NewReleasesCharts
{
//public Metadata metadata { get; set; }
public ResultHome results = new ResultHome();
public IEnumerator<ResultHome> GetEnumerator()
{
return this.results.GetEnumerator();
}
}
public class ResultHome
{
public List<FeaturedReleases> featuredReleases { get; set; }
//public List<FeaturedCharts> featuredCharts { get; set; }
//public List<TopDownloads> topdownloads { get; set; }
//public List<MostPopularReleases> mostPopularReleases { get; set; }
//public List<Components> components { get; set; }
internal IEnumerator<ResultHome> GetEnumerator()
{
throw new NotImplementedException();
}
}
public class FeaturedReleases
{
public int id { get; set; }
public string type { get; set; }
public string name { get; set; }
public string slug { get; set; }
public ReleaseImage images { get; set; }
}
public class ReleaseImage
{
//public ReleaseSmall small { get; set; }
public ReleaseMedium medium { get; set; }
public ReleaseLarge large { get; set; }
}
public class ReleaseLarge
{
public int width { get; set; }
public int height { get; set; }
public string url { get; set; }
public string secureUrl { get; set; }
}
公共类NewReleaseSharts
{
//公共元数据{get;set;}
public ResultHome results=new ResultHome();
公共IEnumerator GetEnumerator()
{
返回此.results.GetEnumerator();
}
}
公开课
{
公共列表功能释放{get;set;}
//公共列表特性charts{get;set;}
//公共列表{get;set;}
//公共列表mostPopularReleases{get;set;}
//公共列表组件{get;set;}
内部IEnumerator GetEnumerator()
{
抛出新的NotImplementedException();
}
}
公共类功能租赁
{
公共int id{get;set;}
公共字符串类型{get;set;}
公共字符串名称{get;set;}
公共字符串slug{get;set;}
公开发布图像图像{get;set;}
}
公共类发布图像
{
//公共发布小型{get;set;}
public ReleaseMedium介质{get;set;}
public ReleaseLarge{get;set;}
}
公共类发布大型
{
公共整数宽度{get;set;}
公共整数高度{get;set;}
公共字符串url{get;set;}
公共字符串secureUrl{get;set;}
}
还有我的xaml
<ListBox Grid.Row="0" x:Name="listRelease">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<toolkit:WrapPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate>
<toolkit:HubTile Title="{Binding name}" Source="{Binding url}" Margin="10" />
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
现在只有名称
显示在中心磁贴中。我假设这是因为名称和图像在不同的类中,但我还没有找到解决方案。谢谢你的帮助。你有
Source="{Binding img}"
但是在您的模型中没有一个公共属性名为img
我是在冒险,但如果有什么的话,你的束缚应该是:
Source="{Binding images.medium.url}"
你有
Source="{Binding img}"
但是在您的模型中没有一个公共属性名为img
我是在冒险,但如果有什么的话,你的束缚应该是:
Source="{Binding images.medium.url}"
抱歉,应该设置为url,但仍然不起作用。抱歉,应该设置为url,但仍然不起作用。