我有一个带有三个按钮 AB 和 C 的模态表单。
另外,我有两个按钮:OK
和Cancel
. OK
Button 的属性DialogResult
设置DialogResult.OK
为Cancel
Button DialogResult.Cancel
。
窗体AcceptButton
和CancelButton
属性设置为这些按钮。
目前,当我按下该ESC
键时表单已关闭,但如果我ENTER
在其他按钮(A、B、C)之一是活动控件时单击该键,则表单不会关闭。我该如何克服呢?
我有两个选择:
Enter 将始终关闭表单(选择焦点按钮然后关闭它),
第一次按下 Enter 键将选择焦点按钮,第二次
ENTER
按下将关闭表单。问题是可能A
选择了 Button,但用户可以查看 ButtonB
或C
使用箭头键。
我无法将 a 设置DialogResult.OK
为其他按钮,因为 - 在这种情况下 - 正常单击也会关闭表单,我无法检测是否由于 Click 事件或ENTER
键而调用了该事件......