C# 防止按下右或左箭头键时列表框控件上的默认操作
我在 Windows 应用程序中有一个列表框控件,我想禁用默认的左右箭头 keydown 事件触发器。目前,当您按向右或向左箭头时,所选项目会在列表框中上下移动。我想添加我自己的动作。
I have a listbox control in a windows app and I want to disable the default right and left arrow keydown event triggers. Currently when you press right or left arrows the selected item travels up and down the listbox. I want to add my own actions.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试向
ListBox.KeyDown
事件添加事件处理程序。如果按下的键是箭头键,请将KeyPressEventArgs
的Handled
标志设置为true
以防止进一步处理。代码示例,基于 MSDN 论坛帖子< /a>
Try adding an event handler to the
ListBox.KeyDown
event. If the key pressed is an arrow key, set theHandled
flag of theKeyPressEventArgs
totrue
to prevent further processing.A code example, based on an MSDN Forum post
您必须重写 ProcessCmdKey 方法在列表框控件中。创建一个新类,从列表框派生它,然后覆盖 ProcessCmdKey。
You have to override the ProcessCmdKey method in the listbox control. Create a new class, derive it from listbox, then override the ProcessCmdKey.