我试图使用listView属性中的MouseClick事件来处理鼠标左键和右键 .
不幸的是,事件似乎永远不会发生 . (双击事件以创建属性,输入一些简单的代码并在第一行放置断点) . 属性中列出的其他几个事件也是如此(ItemSelectionChanged似乎有效但我尝试过的其他事件不会触发 .
这是添加的代码:
- 在form.designer.cs中:
this.listView1.MouseClick = new System.Windows.Forms.MouseEventHandler(this.listView1_MouseClick);
- 在form.cs中:
private void listView1_MouseClick(object sender,MouseEventArgs e)
单击列表视图时,永远不会调用该方法 . 列表视图位于堆栈顶部的选项卡中 .
我想我可能忘记了一些非常基本的东西但是什么呢?
1 回答
ListView有点不寻常,除非您单击视图中的项目,否则它的MouseClick事件不会触发 . 解决方法是改为使用MouseDown或MouseUp事件 . 您通常对ItemSelectionChanged事件btw更感兴趣 . 如果使用MouseDown / Up,您可能需要使用HitTest()方法来查看所点击的内容 .