Xamarin.forms Xamarin表单获得值

Xamarin.forms Xamarin表单获得值,xamarin.forms,Xamarin.forms,我有课 public class A { public int id{get;set;} public string name {get;set;} } xaml <Picker x:name="picker1" ItemsDisplayBinding = "{Binding name}" ItemsSource="{Binding SomeClass}" SelectedIndexedChanged="fun"/> <Picker x:name="

我有课

  public class A
{
   public int id{get;set;}
   public string name {get;set;}
}
xaml

    <Picker x:name="picker1" ItemsDisplayBinding = "{Binding name}" ItemsSource="{Binding SomeClass}" SelectedIndexedChanged="fun"/>

<Picker x:name="picker2" ItemsDisplayBinding = "{Binding some_val}" ItemsSource="{Binding A}"
在选择器1中,如果我设置ItemsDisplayBinding={Binding name},那么选择器中的值包含“NAMES”

在选择器1中,如果我设置ItemsDisplayBinding={Binding id},那么选择器中的值包含“id”


问题是我想在picker1中显示“names”,但需要相应“ID”的值。这怎么可能呢?

只需转换到正确的类并选择“id”属性

fun()
{
  var value = ((MyClass)picker1.Items[picker1.SelectedIndex]).id;
}

获取错误“无法将类型“string”转换为..我假设ItemsSource是一个列表。如果不是,它是什么?是的。
HttpResponseMessage response=await client.GetAsync(RestURL);var content=await response.content.ReadAsStringAsync();var foo=JsonConvert.DeserializeObject(content);picker1.ItemsSource=foo;
fun()
{
  var value = ((MyClass)picker1.Items[picker1.SelectedIndex]).id;
}