自分でカスタマイズしたコントロールやコンポーネントは、VS.NETのデザイナで利用することができます。ツールボックスに表示され、Formにドロップすることで利用することが可能で、その際、そのクラスのプロパティは、デザイナのプロパティとして表示・設定することが出来ます。
で、設定するとその値は、該当のFormのxxx.Designer.csなどに含まれるInitializeComponent()メソッドに設定されます。コードが自動生成されるイメージです。で、プロパティに[DefaultValue("")]のようなアトリビュートを付けると、その値は初期値となるため、設定したのが初期値の場合、プロパティ設定のコードが省略されます。
それの何がよいかというと、コントロールの初期値を変更するだけで、値を設定していないプロパティが一気に切り替わるところです。しかし設定できる値の条件があり、Cololr型などの場合、[DefaultValue(Cololr.Red)]のような書き方をすることが出来ません。
で調べてみると、DefaultValueには引数が2つ渡せるようで、[DefaultValue(typeof(Color),"Red")]のような書き方が出ることがわかりました。ちょっと感動です。
0 件のコメント:
コメントを投稿