如何清除所选项目Xamarin列表

时间:2017-07-21 17:07:12

标签: c# listview xamarin xamarin.forms

我有一个Xamarin表单应用程序,显示项目列表。当您选择其中一个项目时,该应用程序会导航到包含一些详细信息的页面。此详细信息页面还包含标准的“后退”按钮,可将您带回原始列表。

我遇到的问题是,这种方法很好,除了当我回到主列表时,如果我再次选择相同的项目,则没有任何反应。我必须在列表中选择其他项目才能正常工作。

我认为之前选择的项目必须被清除,或者除了我尝试过的尝试之外,它只会使应用程序崩溃。

这是我正在使用的代码:

listView.ItemSelected += async (sender, e) =>
    {
        string selectedItem = e.SelectedItem.ToString();
        var detailsPage = new ItemDetails(selectedItem); 
        await Navigation.PushAsync(detailsPage);
    };

我需要其他东西来清除细节,但是当我在listView.SelectedItem = null中添加时;在await命令之后,当我点击后退按钮时,它导致应用程序崩溃。

我需要在此处添加什么,以便重新选择相同的项目并转到详细信息页面?

1 个答案:

答案 0 :(得分:2)

listView.ItemSelected += async (sender, e) =>
{
    if (e.SelectedItem != null) {
      string selectedItem = e.SelectedItem.ToString();

      // clear selected item
      listView.SelectedItem = null;

      var detailsPage = new ItemDetails(selectedItem); 
      await Navigation.PushAsync(detailsPage);
    }
};