如何在Windows应用商店应用C#listview中刷新后保留所选项目?

时间:2014-08-01 17:13:37

标签: c# windows listview visual-studio-2013 windows-store-apps

我只看到一个与this相关的未回答的问题,所以我想我会再试一次。

我有ListView来自string数组。我需要重新填充ListView的原因是因为我根据当前时间在某些项目上设置了前景色,而我发现设置前景色的唯一方法是将项目添加到ListView。 (如果有方法可以改变现有项目的颜色,那将是很好的,但我找不到办法。)ListView在Windows应用商店中有所不同令人沮丧而不是Windows桌面WPF应用程序。

无论如何,当选择项目时,一旦重新填充列表,选择(复选标记)就会消失。我已经找到了一种方法,可以在刷新之前找到当前选择的项目,我认为使用var selecteditems = myListView.SelectedItems;但是在刷新后尝试使用它来重新检查项目似乎是徒劳的。我非常感谢任何帮助,因为我已经绞尽脑汁待了好几个星期。它似乎应该如此简单,所以我真的很沮丧。

我想的另一种方法是对每个项目执行foreach并检查.IsSelected是否为真,但我似乎无法将每个单独的项目关联起来。

在我看来,我在思考像:

foreach (ListViewItem Item in ListView.Items) 
{ 
    if (Item.isselected)
        \\ do something so to remember which items are selected
}

然后在填充新ListView后的某个时刻,执行另一个foreach,如果它与之前选择的项目匹配,请再次选择它。但是,在Windows 8.1 Store Apps VS2013中,仅以编程方式选择项目似乎很困难。甚至看起来ArrayList现在已不再可用。为什么MS必须不断改变事物?

0 个答案:

没有答案