我有一个应用程序,它利用了一个网站的API。它返回以下xml:
<xml>
<id>48</id>
<name>Nuno Horta</name>
<user_lvl>2</user_lvl>
</xml>我的代码是这样的:
client.ExecuteAsync(request, response => {
var value = response.Content;
XElement loadedData = XElement.Parse(value);
var data = from query in loadedData.Descendants("xml")
select new
{
id = (int)query.Element("id"),
name = (string)query.Element("name"),
};
listBox.ItemsSource = data;
});我想要获取这两个值,id和name,以便将它们保存在应用程序设置中,所以我尝试在这里显示它们:
<TextBlock Text="XML Data:"/>
<ListBox x:Name="listBox">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Margin="10" >
<TextBlock Text="{Binding name}"/>
<TextBlock Text="{Binding id}"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>顺便说一句,我正在使用restsharp来发出请求,没有success...any想法来获得这些值?我需要用另外3个api方法请求来做这件事。谢谢!
发布于 2012-08-16 04:24:28
由于要绑定到项的属性,因此需要修改数据绑定以使用路径。
所以你的xaml应该是
<TextBlock Text="XML Data:"/>
<ListBox x:Name="listBox">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Margin="10" >
<TextBlock Text="{Binding Path=name}"/>
<TextBlock Text="{Binding Path=id}"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox> 有关路径绑定的更多信息,请访问here
https://stackoverflow.com/questions/11953505
复制相似问题