我正在开发Windows Phone 8应用程序。如何从listpicker获取id值?
在我的应用我使用列表选择器.LIST选择器值从Web服务(JSON格式)
我的Web服务结果返回格式
[
- {
id: "9",
name: "Pizza",
root_id: "4",
level: "1"
},
-{
id: "10",
name: "Fine Dining",
root_id: "4",
level: "1"
},
]
我的列表选择器XAML代码绑定
对于绑定<toolkit:ListPicker x:Name="filterpicker" SelectionChanged="filterpicker_SelectionChanged" Tap="filterpicker_Tap" Foreground="White" BorderThickness="0" Margin="395,-100,0,10" Height="70" Width="60">
<toolkit:ListPicker.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" Visibility="Collapsed"/>
</DataTemplate>
</toolkit:ListPicker.ItemTemplate>
<toolkit:ListPicker.FullModeItemTemplate>
<DataTemplate>
<TextBlock>
<Run Text="{Binding}"/>
</TextBlock>
</DataTemplate>
</toolkit:ListPicker.FullModeItemTemplate>
</toolkit:ListPicker>
我的C#代码
void filterwc_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
var filterdata = e.Result;
var filtervalue = JsonConvert.DeserializeObject<List<filterdatas>>(filterdata);
List<string> filtercategories = new List<string>();
foreach (filterdatas budval2 in filtervalue)
{
filtercategories.Add(budval2.id); /**I need to display the name and on selectionchanged event i need to get the id value**/
}
filterpicker.ItemsSource = filtercategories;
}
如果我的问题不明确PLZ告诉我给的详细信息...
我需要一个像这样
列表选择器进行放来这样
比萨
精细餐饮
On SelectionChanged事件
如果我点击比萨,我需要得到 “9”
如果我点击美食,我需要得到 “10”
谢谢...
您可以通过多种方式来做到这一点。如果你想这样做,“正确的方法”你会使用一个转换器类。如果你想这样做“简单的方法”只需将文本框标记值绑定到你想要的标识。然后在你的后端检索选择更改 –
@AMR Plz向我展示转换器类的一些示例 – Gurunathan
这是一个巨大的话题。请自行研究一下谷歌有很多例子。 –