最近、ソフトウェアを使用しているときに、ESCキーを使用すると、変更を保存せずにダイアログが閉じられることがあります。特に、ダイアログにキャンセルボタンが表示されていても、キャンセルボタンにマウスやタブを移動する必要はありません。 「おっと、それをするつもりはありませんでした」と言ってもいいクリーンな方法です。ソフトウェアに転送します。実際には、私はこの機能を実装していないソフトウェアに迷惑をかけることがわかりました。私はそれがWinformsのフードの下でまだ行われていないとは信じられません - 私には直感的です...どのようにWinformsのダイアログを閉じるためにESCキーを取得しますか?
私は見てきましたForm KeyPressイベントに入れたり、 "Cancel" DialogResultなどをシミュレートしようとしています。
したがって、問題は次のとおりです。バインドについて最もクリーンな方法変更を保存せずにダイアログを閉じるためのESCキー?
これまでの経験をお持ちの方のお役に立てれば幸いです。
Enterキーに対応する "AcceptButton"もあります。この回答方法の利点は、キーの押下よりも入力とエスケープの方が多くなることです。このメソッドを使用すると、ボタンに正しいビジュアルヒントがレンダリングされます(たとえば、AcceptButtonが太い境界線を取得するなど)。 – stusmith
キャンセルボタンとOKボタンのDialogResultプロパティも設定することを忘れないでください。 – NascarEd