1

ユーザーコントロールのプロパティを作成するときはいつでも、宣言型構文を使用してプロパティ値を設定できるため、次のように設定できることを理解しています。

<uc1:MyControl id="MyControl1" runat="server" Text="Hello" Number="10" Access="ReadWrite" />

これらの属性は、次のタイプのプロパティの値を設定します。

  • テキストは文字列です
  • 数値は整数です
  • アクセスは列挙型です

宣言型マークアップで「Array」または「Control」タイプのパブリックプロパティを設定することはできません。(または私はできますか?)

私の質問は:

コントロールの属性として宣言型構文を使用して直接設定できるタイプの完全なリストは何ですか?

4

1 に答える 1

1

さて、この質問が解決されずにしばらく経った後、ついに私はこの記事のMSDNライブラリで公式の答えを見つけました。

属性として永続化できるプロパティは単純プロパティと呼ばれ、文字列または文字列に簡単にマップできる型である必要があることがわかりました。これが記事の抜粋です:

「単純なプロパティとは、タイプが文字列または文字列に簡単にマッピングできるタイプのプロパティです。単純なプロパティは、ユーザー側で何もしなくても、コントロールの開始タグの属性として保持されます。文字列型とプリミティブ値型のプロパティBoolean、Int16、Int32、Enumなどの.NETFrameworkクラスライブラリのプロパティは単純です。」

だから私は私の質問でリストをほぼ完成させました。宣言型構文で(属性として)直接設定できるプロパティは、次のタイプである必要があります。

  • ブール値
  • Int16
  • Int32
  • 列挙型
于 2012-04-23T15:22:11.430 に答える