misc.log

日常茶飯事とお仕事と

拡張プロバイダ

備忘録ですのでよろしく。
http://d.hatena.ne.jp/frontline/20080813/p3 に書いていた添付プロパティのような機能を実現する機能を「拡張プロバイダ」と言うらしい。これを使うには

  1. ProvidePropertyAttribute 属性を使用して、拡張プロバイダから提供されるプロパティを指定する。
  2. 提供されたプロパティを実装する。
  3. 提供されたプロパティをどのコントロールが受け取るかを追跡する。
  4. IExtenderProvider インターフェイスを実装する。

といった手順が必要...ってコレじゃわかんないですよ。後日やってみようかと。MSDNさん曰く、これで追加されたプロパティは、デザイン画面のプロパティグリッド(Visual Studio上でプロパティを一覧表示/設定する小さいグリッド?)には出るけれど、ロジック中でアクセスするには追加された側のコントロール経由ではアクセスできないようで...たとえば、フォームにToolTipTextを用意すると、TextBoxのプロパティ一覧にはToolTipTextプロパティが出てくるけれど、コード中で「TextBox1.ToolTipText」なんてことはできないみたい。