ご回答ありがとうございます。
> どこのPreviewKeyDownイベントが発生していますか?
Focus() でフォーカスを当てたピクチャーボックスの PreviewKeyDown イベントが発生します。
> いずれにしても、フォーカスの定義間違ってるんじゃないですか?
フォーカスについて解説されているサイト・書籍を紹介していただけると助かります。
> 上位のProcess関係のキーメソッドで無視してやれば良いです。
public class MyPictureBox : PictureBox
{
protected override bool IsInputKey(Keys keyData)
{
if ((keyData & Keys.Up) != 0 || (keyData & Keys.Down) != 0 || (keyData & Keys.Left) != 0 || (keyData & Keys.Right) != 0)
{
return true;
}
return base.IsInputKey(keyData);
}
}
上記 派生クラス MyPictureBox を作成し、ピクチャーボックスと置き換えることで期待する動作を確認致しました。
アドバイス頂いた、「上位のProcess関係で無視」とはこういう事で合っているのでしょうか?
|