これまで同様の質問がありましたが、私の解決策はありませんでした。私はCTRLボタンと "+"ボタンの両方が押されたときに実行する必要のあるコードをいくつか持っています。親フォーラムでKeyPreviewフィールドをtrueに設定しました。私はコントロールのクラスには、以下のイベントハンドラを入れてみましたが、誰も今まで私のために働いていません。私は、任意のキーを押すと、イベントがキャッチされていません。WinFormsコントロールのキーダウンイベントが発生しない
private void PreviewControl_OnKeyDown(object sender, KeyEventArgs e){}
protected override OnKeyDown(KeyEventArgs e){}
protected override bool ProcessCmdKey(ref Message msg, Keys keyData){}
フォーカスがある場合にのみ、コントロールにキーイベントが送信されます。フォーカスを持たずにユーザーコントロールを使用してショートカットキーをトラップする場合は、[this trick](http://stackoverflow.com/a/38983624/3110834)を使用できます。 –
あなたのコントロールが 'PictureBox'のようなもので、それを選択可能にしてキーイベントを処理したい場合、[this(Preferred)]のように選択できます(http://stackoverflow.com/a/38982186/3110834 )または[this](http://stackoverflow.com/a/37792846/3110834)を参照してください。 –
(Preferred)を実装しようとしましたが、まだ同じ問題があります。私は何か完全に間違っている必要がありますが、私はそれが何であるか把握することはできません。 – user2481095