【发布时间】:2023-04-07 05:06:01
【问题描述】:
我正在寻找一种在控件获得焦点时取消键盘快捷键或命令键(如 F1 或 CTRL+O)击键的方法。如果可能在控制级别上。
想象一下,我有一个托管在表单上的控件(例如简单的文本框)。我为打开 (CTRL+O) 或帮助 (F1) 等命令设置了键盘快捷键。如果控件具有键盘焦点并且我按下了我想要阻止执行快捷命令的命令之一。
我希望有一个解决方案,我可以处理这些击键并防止它们在控件级别而不是在表单级别“冒泡”。
【问题讨论】:
-
您可以设置/取消设置全局标志并将其用作提前退出事件的条件。但说真的,“编辑控件值”如何改变应用程序的上下文?无论你在那里做什么,这听起来都是错误的......
-
我正在尝试创建一个终端仿真控件,虽然它具有焦点,但我需要将 F1 发送到远程服务器并禁止打开帮助文件。有意义吗?
标签: c# winforms keyboard-shortcuts