misc.log

日常茶飯事とお仕事と

構造体プロパティをプロパティウィンドウに公開する

結果から言うと失敗というか挫折。
複数のボタンコントロールを貼り付けた複合コントロールで、各ボタンの外観設定を構造体にし、それをプロパティとして公開しようとしたところ、難しいドキュメントに行き当たって挫折してしまった。やりたかったのは、LocationやFontプロパティのように、折りたたみでプロパティウィンドウに表示したかったのだが、そのまま構造体をPublic Propertyとして公開しただけではダメだった。
.NET Reflectorで、たとえばSizeプロパティの内部構造を見てみると、

 _
Public Structure Size

というような記述がある。属性がいくつかついているが、この件を解決するには、TypeConverterについて理解する必要がありそうだ。
以下のURLにある記述がとっかかりになるとおもう。
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpguide/html/cpconImplementingTypeConverter.asp