【问题标题】:access properties of the selectedItem xamarin forms访问 selectedItem xamarin 表单的属性
【发布时间】:2018-06-03 08:55:33
【问题描述】:

尝试使用 slectedItem 访问列表中的属性{Name}。

 var SName = e.SelectedItem;

            if (e.SelectedItem == null)
            {
                return;
            }
            await DisplayAlert("Item Selected", SName.ToString(), "Ok");

常见的方法就是 var SName = e.SelectedItem.Name;。但是我没有选择访问它。 我已经有了 get;set;如果我在提及行上添加断点,它会显示我想要显示的 Name 属性和值。 有什么建议吗?谢谢

【问题讨论】:

    标签: listview xamarin.forms selecteditem


    【解决方案1】:

    e.SelectedItem 的类型为 object - 您需要先将其转换为适当的类型

    var item = (MyType) e.SelectedItem;
    var name = item.Name;
    

    【讨论】:

    • 所以,我尝试了.. var feedbackName = (feedback)e.SelectedItem;。这很奇怪,因为当我将断点放在那里时,它会显示属性 Name 及其值。然后,我尝试了这个。但给我错误** var name =feedback.Name;***
    • feedbackName.Name
    【解决方案2】:

    https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/operators/type-testing-and-cast

    您可以使用类型测试运算符使其看起来更干净。 (C# 7.0+)

    if(e.SelectedItem is MyType item)
    {
      var name = item.Name;
      await DisplayAlert("Item Selected", name, "Ok");
    }
    return;
    

    【讨论】:

      猜你喜欢
      • 2018-11-20
      • 2019-04-02
      • 1970-01-01
      • 1970-01-01
      • 2018-11-15
      • 2015-11-05
      • 2022-11-13
      • 1970-01-01
      • 2016-09-01
      相关资源
      最近更新 更多