HandleCreatedイベントは発生していた
以前のエントリ「HandleCreatedイベントの不思議」に対して、Hongliangさんからコメント頂いた。
Handle プロパティは、参照した時にまだハンドルが作成されていない場合強制的にハンドルを作成します。よって Form の HandleCreated イベントはこのタイミングに発生する事になります。
単に HandleCreated イベントにハンドラ追加するタイミングが Handle を取得したときよりも後になっているだけではないでしょうか。
試してみたが、全くその通りだった。ここでの重要な文言は「Handle プロパティは、参照した時にまだハンドルが作成されていない場合強制的にハンドルを作成します」なのだが、これもMSDNにしっかりと掲載されていた。
Handle プロパティの値は Windows HWND です。ハンドルがまだ作成されていない場合は、このプロパティを参照すると強制的にハンドルが作成されます。
Control.Handle プロパティ - .NET Framework クラスライブラリィリファレンスより
がーーーーん。
それにしても日記では
つーか、バグにしか見えないのだが。
等とほざいたわけで、私の頭にこそバグが潜んでいたようだ。 ....面目ない。