Vb.net 确定listview的索引更改是否由鼠标或键盘触发
如何确定listview的索引更改是否由鼠标或键盘触发 要确定选定的索引更改事件,我使用Vb.net 确定listview的索引更改是否由鼠标或键盘触发,vb.net,winforms,listview,Vb.net,Winforms,Listview,如何确定listview的索引更改是否由鼠标或键盘触发 要确定选定的索引更改事件,我使用 Private Sub lv_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lv.SelectedIndexChanged End Sub 是否存在仅用于鼠标单击的事件?或者检测是否由鼠标点击或键盘触发的任何条件?请提供帮助我相信您可以检查Sender ListView的M
Private Sub lv_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lv.SelectedIndexChanged
End Sub
是否存在仅用于鼠标单击的事件?或者检测是否由鼠标点击或键盘触发的任何条件?请提供帮助我相信您可以检查Sender ListView的MouseButtons属性,以确定用户是否按下了任何鼠标按钮:
Private Sub lv_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lv.SelectedIndexChanged
If sender.MouseButtons = MouseButtons.None Then
' No buttons being pressed (keyboard used)
Else
' Mouse button being pressed
End If
End Sub
这是相当不明智的。但是,使用ListView.MouseDown和PreviewKeyDown事件设置一个布尔变量是可行的,您可以在SelectedIndexChanged事件处理程序中测试该变量。仔细测试。@HansPassant,谢谢你的回答。。