Neutral Scent

App developments & Gadgets

RadioButton.Clickのおかしな動き

これは仕様なんですかねぇ?
WindowsFormにラジオボタンを張って、Clickイベントのイベントハンドラを追加すると、単にフォームがロードされただけでClickイベントが発生します。マウスとか一切触らなくてもです。トレースしてもどこから来るのかさっぱりわかりません。
ぐわー、なんでだー? と小一時間追い回してみましたが、どうにもならず、しょうがないからMouseUpを取ろう、と思ってMouseClickイベントがあることに気付き、そちらを使ったところ事なきを得ました。
おそらく、ラジオボタンの選択値の初期化の時点でClickイベントが発生してしまっているのではないかなぁ、と思います。
Clickイベントのヘルプを読むと、

...、Enter キーを押すなど、マウスのクリック以外のアクションによってクリックが行われた場合、MouseClick イベントは発生しません。

と書いてあるので、「など」に相当する何かが起きているのでしょう。いやはやいやはや...。
というわけで、ラジオボタンを通常のボタン型などにしてクリックを判定したいときは、MouseClickを使う、ということで...。