より良いエンジニアを目指して

1日1つ。良くなる!上手くなる!

KeyDownイベントでSpaceキーを認識しない。デバッグしたらProcessKeyと認識されてた。

あれ、Space押しているのに、ListBoxのKeyDownイベントが反応していない。

f:id:rimever:20210101194504p:plain

デバッグすると、なんとProcessKeyとして認識されているではありませんか。

何、ProcessKeyって。MSDNみても、値229のProcessKeyとしか書いてません。

全角/半角切り替えボタンを押した時も同様の結果になりますね。

www.gizcollabo.jp

全角スペースと認識されているからではないかとのことでした。

であれば取るべき手は、簡単ですね。ImeModeのプロパティを変更すればいい。

Offにすると、コントロールに切り替えた時にはOffになるものの、そこからOnに出来てしまうようなのでDisabledにしました。

f:id:rimever:20210101195046p:plain