拡張コントロールを作成していると、配置時のみ値を初期化したいことがある。
このような場合は、コンストラクタ(Newメソッド)ではなく、InitLayoutメソッドに処理を記述する。

コンストラクタに処理を記述しない理由は以下の通りである。
 ・初期化処理が2回実行されてしまう。
  →初期化処理のタイミングは、以下の通り。
    1.コントロールの配置時
    2.プログラム実行時
    (フォームの生成時等、コントロールが生成されるタイミング)
 ・Addメソッドを利用したプロパティの場合、初期値が二重登録されてしまう。
  →コンボボックスのItemプロパティやツリービューのTreeNodeプロパティ等
   ※単純な変数の初期化であれば、問題は発生しない。
続きを読む