カスタムコントロールを作ってデザイナへ貼り付けても、InitializeComponent()内でnewされず、実行するとエラーになるケースが頻発しました。

これどうやら、カスタムコントロールのコンストラクタがpublicでないと起こるみたいです。
http://stackoverflow.com/questions/5684784/custom-user-control-not-initialized-in-auto-generated-code

interfaceの実装もpublic固定ですし、デザイナで表示させるプロパティもpublicである必要がありますし(うろ覚え)、データバインディングを行わせるためのプロパティもpublicでないといけません。

外部に公開する気は無いのでinternalをよく使っているのですが、結構こういう制限があって統一しきれないのが残念です。

記事検索

アーカイブ