1

我有一个名为 _criteria 的 ListView,其中填充了 5 个项目。ListView SelectionMode="多个"

当每个项目被选中时,我想将 int 计数增加 1,我可以在 _crit Selection 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 事件中,它计算选择和取消选择,所以我不断增加。我该怎么办?

4

1 回答 1

0

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

于 2013-04-25T23:47:51.310 回答