カスタムコントロールの必要性

コンポーネント作ろうよ - 菊池 Blog

コンポーネントにしてツールボックスに乗せるか否かの議論は別にして、カスタムコントロールにすることが必要なケースが昔に比べて減っているのは確か。
過去の日記でも触れているが、WindowsFormsに限れば匿名デリゲート等でコードを動的にアタッチして、既存のコントロールの機能を追加したり差し替えたりすることができるようになったことで、業務システムにおけるカスタムコントロールの必要性は随分と減った。
ただし、菊池さんも書いているように、複数のコントロールの振る舞いを統合して管理する何かが必要になる。細かい粒度であればコンポーネントだろうし、粗い粒度であればフレームワークということになるか。
拙作のWindowsForms用フレームワークは上記のようにカスタムコントロールはできるだけ作らないポリシで開発したが、ある業務(実際に既に稼働している)において適用した際、必要になったカスタムコントロールはたったの3つ。ツールボックスからポトペタして使うことを前提にした真のカスタムコントロールはASP.NETで実現されていたラジオボタンリストのWindowsForms版ただ1つであった。