选择WinForm ListView项,按Delete:Trigger Code

soo*_*ise 5 c# winforms

假设我有一个填充了几个项目的列表项,我选择一个并按删除.
我希望在按下删除时发生一些事情(我想知道选择了哪个或哪些项目).如果可以的话,我想知道如何做到这一点.

谢谢!

mse*_*ant 7

设置ListView以获得KeyDown事件的事件处理程序.然后检查按下的键是删除键.然后使用SelectedItems查看选择的项目并将其删除.确保自下而上,因为您的SelectedItems集合将不断变化.

private void listView1_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.KeyData == Keys.Delete)
        {
            for (int i = listView1.SelectedItems.Count - 1; i >= 0; i--)
            {
                ListViewItem li = listView1.SelectedItems[i];
                listView1.Items.Remove(li);
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)