VS2005中winform的listview有关问题!(大家帮帮忙)
VS2005中winform的listview问题!(大家帮帮忙)
将winform的
listview的view=Details
listview的MultiSelect = true;
listview的CheckBoxes = true;
之后。
用shift或者ctrl键+鼠标左键单击进行多选时(只是想高亮显示既selectd=true),但当这些行被高亮显示的时候,checkbox也被自动复选上了。(如果有些行原来已经被选中就会变成没有被选中。)
有什么办法可以不让这些高亮行的checkbox被选上?
附件中有界面的截图。
------解决方案--------------------
将winform的
listview的view=Details
listview的MultiSelect = true;
listview的CheckBoxes = true;
之后。
用shift或者ctrl键+鼠标左键单击进行多选时(只是想高亮显示既selectd=true),但当这些行被高亮显示的时候,checkbox也被自动复选上了。(如果有些行原来已经被选中就会变成没有被选中。)
有什么办法可以不让这些高亮行的checkbox被选上?
附件中有界面的截图。
------解决方案--------------------
- C# code
bool isSelectMode = false; private void listView1_ItemCheck(object sender, ItemCheckEventArgs e) { if (listView1.SelectedItems.Count>1 && isSelectMode) { e.NewValue = e.CurrentValue; isSelectMode = false; } } private void listView1_KeyDown(object sender, KeyEventArgs e) { if (e.Control || e.Shift) isSelectMode = true; } private void listView1_KeyUp(object sender, KeyEventArgs e) { isSelectMode = false; }