如何在不使用以下方式的情况下选择所有或不选择任何项目:
foreach (ListViewItem item in listView1.Items)
{
item.Selected = true;
}
或者
foreach (ListViewItem item in listView1.Items)
{
item.Selected = false;
}
我知道底层的Win32 listview通用控件支持LVM_SETITEMSTATE消息,您可以使用它来设置选定状态,并通过将索引设为-1,它将应用于所有项目。我不想通过PInvoking消息到.NET Listview控件后面的控件来实现(我不想成为一个不好的开发人员,并依赖于未记录的行为——当他们将其更改为完全托管的ListView类时)。
Bump
Pseudo Masochist提供了的解决方法:
ListView1.SelectedItems.Clear();
现在只需要 SelectAll 代码。