C# 取消选择Listview中的项目(windows应用商店应用程序)

C# 取消选择Listview中的项目(windows应用商店应用程序),c#,xaml,windows-8,microsoft-metro,C#,Xaml,Windows 8,Microsoft Metro,我有一个名为_criteria的列表视图,其中填充了5项。ListView SelectionMode=多个 选择每个项目后,我想将int count增加1,我可以在这里的_critselection Changed事件处理程序中执行此操作: private void _crit(object sender, SelectionChangedEventArgs e) { count++; textBox1.Text = "this is "+cou

我有一个名为_criteria的列表视图,其中填充了5项。ListView SelectionMode=多个

选择每个项目后,我想将int count增加1,我可以在这里的_critselection Changed事件处理程序中执行此操作:

    private void _crit(object sender, SelectionChangedEventArgs e)
    {
        count++;
        textBox1.Text = "this is "+count;
    }
但是,对于其中一个ListView项目,当它被选中时,我希望将计数增加2。我该怎么做?如果我说:

        if (_criteria.SelectedItem == listViewItem4)
            count += 2;

然后,如果选中listViewItem4,则我每做一次其他选择,计数就会增加2。另外,我想将我取消选择的每个ListViewItem的计数减少1,并在取消选择listViewItem4时将计数减少2,但在SelectionChanged事件中,它同时对选择和取消选择进行计数,因此我不断获得增量。我该怎么办?

在这种情况下,请查看e.AddedItems和e.RemovedItems,查看哪些项目已从列表中添加/删除。如果listViewItem4在e.AddedItems中,您知道发生了什么。

谢谢。获取我要查找的代码如下:private void _critobjectsender,SelectionChangedEventArgs e{foreach ListViewItem lv in e.AddedItems{count++;if e.AddedItems.ContainslistViewItem4 count+=1;}e.RemovedItems{count-;如果e.RemovedItems.ContainslistViewItem4 count-=1;}textBox1.Text=分数为+count;}