C# Winforms ListView DoubleClick 事件在任何地方
我试图在我的 winform 中获得以下功能:
我需要每次有人双击我的 ListView 时都会发生一些事情,但该事件似乎仅在双击包含 ListView 中的项目的行时触发而不是 ListView 中的任何位置(包括所有项目下方的空白区域)。
双击 ListView 中的任意位置时会触发什么事件?
谢谢
I'm trying to get the following functionality in my winform:
I need so that every time a someone double clicks inside my ListView, something will happen, but the event seems to only trigger when double clicking on a row containing an item in the ListView instead of anywhere in the ListView (including the empty area below all the items).
What event will fire when double clicking anywhere in the ListView?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用 ListView1_MouseDown 事件而不是单击
you can used the ListView1_MouseDown event rather than click
您可以通过继承 ListView 并重写 OnNotifyMessage() 方法来实现所需的行为。
在该方法中,您必须拦截正确的消息:WM_LBUTTONDBLCLK(或类似消息)。
这不会是您编写过的最漂亮的代码,但应该可以为您带来结果。
You can probably achieve the required behavior by inheriting from ListView, and overriding the method OnNotifyMessage().
In that method, you'll have to intercept the correct message: WM_LBUTTONDBLCLK (or similar).
That's not going to be the prettiest code you've ever written, but should get you the results.