私はWinFormsフォーム(C#/ .Net)を持っており、PictureBox、MenuStrip、Panel、Buttonコントロールを2つ含んでいます。矢印キーの検出 - ウィンドウ全体のキーダウン
ウィンドウ全体の矢印キーのKeyDownイベントを検出する必要があります。つまり、子コントロールのいずれにフォーカスがあるかにかかわらず、ウィンドウがフォアグラウンドにある場合、矢印キーが押されたことを知り、発生したときにコードを実行する必要があります。
私は、各コントロールのイベントハンドラをアタッチする必要はありません。より良い方法がありますか?どうしたらいいですか?
編集:以下の回答で示唆されているようにKeyPreviewを使用して、私は他のキーを検出することができます。矢印キーを検出できません。フォームのボタンが無効になっている場合にのみ、矢印キーを検出できます。そうでなければ、彼らは前後に焦点を合わせ、イベントを起こさない。フォーム上のボタンで矢印キーを検出するにはどうすればよいですか?
これは機能しませんでした – Raghurocks