SupportsEventValidationAttribute † ページのEventValidation属性を有効に設定している場合、Asp.netはコントロールのイベントのPostbackが偽装かどうかの検証を行いますし、Callback パラメータも検証します。EventValidationをサポートするカスタムコントロールを作る場合は、この属性をつけておかないとページのEventValidationを有効にしていたとしてもValidationが行われないらしい。
DefaultPropertyAttribute †Visual Studio でカスタマイズコントロールのプロパティ一覧を見る時、フォーカスはデフォルトにとのプロパティにアクティブしているかを定義する。 DefaultEventAttribute †DefaultPropertyAttributeに見ている、Visual Studio でカスタマイズコントロールのイベント一覧を見る時、フォーカスはデフォルトにとのイベントにアクティブしているかを定義する。 ControlValuePropertyAttribute †MSDNの説明からみると、これはプロパティの値を設定する属性見えるけど、実際の操作に確認できない。 ParseChildrenAttribute と PersistChildrenAttribute † ParseChildrenAttribute 属性は入れ子コントロールを格納できないコントロールに、子コントロールを入れて格納したい場合、或いはそもそも容器ではないコントロールに子コントロールを入れるために、利用する属性です。逆属性を付けなくて、Asp.netマークアップコードで入れ子があるコントロールを定義すると、パーサーエラーが発生します。 例: asp.net マークアップ側のコード <cc2:CustomTextBox ID="CustomTextBox1" runat="server"> <cc2:CustomLabel ID="CustomLabel1" runat="server"></cc2:CustomLabel> </cc2:CustomTextBox> カスタマイズコントロールの定義 [ParseChildren(true)] public class CustomTextBox : System.Web.UI.WebControls.TextBox { CustomLabel display_ = new CustomLabel(); //これをプロパティを定義する必要があります。 public CustomLabel CustomLabel { get { return display_; } set { display_ = value; } } }
参考情報: ParseChildrenAttribute †カスタマイズするコントロールを子コントロールとして利用する場合、付ける属性です。 ControlBuilderと一緒に利用する場合が多い。ページパーサーがどういう風にコントロールを分析するか、ContorlBuilderによって記述する。 ControlBuilder †ページパーサー ToolboxDataAttribute †コントロールを配置する際に、生成するHTMLタグのソースコードを定義する。 [ToolboxData("<{0}:CheckBox runat=\"server\" HtmlEncode=\"True\"></{0}:CheckBox>")] ValidationPropertyAttribute † ASP.NET サーバー コントロールが検証プロパティの識別のために使用するメタデータ属性を定義します。このクラスは継承できません。 iディレクトリで複数のポータルサイトにディレクトリ登録 |