2013-02-09 41 views
1

这可能是一个愚蠢的问题,但是......我如何在listview/gridview中实现最大数量的选定项目?设置所选项目的最大数量

我有9个项目,一个ListView从中我希望用户能够只选择5

到目前为止,我有这个在SelectionChanged事件实施:

if (MyListView.SelectedItems.Count >5) 
    MyListView.SelectedItems.RemoveAt(0); 

这是一个有趣的,但回避的方式,使之,当第6项被选中,第一个被deselcted,所以alwyays他们仍然5.

我想要什么,虽然,当我有5个项目已经选定,除非我去除,否则不能再选择其他人ct项目,同时我满足条件SelectedItems.Count < 5.

任何建议,想法,代码是非常感谢。

回答

1

这是一个愚蠢的问题,确实......一直在想了很多,我完全没有想法,之后只有5分钟,我张贴了这个...和代码如下所示:

if (MyListView.SelectedItems.Count >5) 
    MyListView.SelectedItems.RemoveAt(MyListView.SelectedItems.Count-1); 
0

事件处理程序:

this.MyListView.ItemSelectionChanged += new System.Windows.Forms.ListViewItemSelectionChangedEventHandler(this.MyListView_ItemSelectionChanged); 

代码:

private void MyListView_ItemSelectionChanged(object sender,  ListViewItemSelectionChangedEventArgs e) 
    { 
     if (MyListView.SelectedItems.Count > 5) 
     { MyListView.SelectedItems[0].Selected = false; } 
    } 
+0

我的例子中删除了所选择的第一个项目,您的解决方案消除了最后一个项目选择在新的之前编辑。无论什么对你有用。 – 2013-02-09 22:39:44