1

いくつかの短いパラメーターが渡される asp.net サーバー側コントロールを作成していますが、大量のカスタム HTML コードを提供できるようにする必要もあります。

私が考えた最も簡単な方法は、次のように、サーバー コントロールのタグ間で指定できるようにすることでした。

<MyControl:Example Runat="server" Id="myControl" Message="This is a message">
  <p>This is a long piece of HTML a few dozen lines long...</p>
</MyControl>

カスタム サーバー コントロール内からタグ間のテキストにアクセスするにはどうすればよいですか?

4

1 に答える 1

3

テンプレート コントロールを作成する必要があります。

<MyControl:Example Runat="server" Id="myControl" Message="This is a message"> 
  <HtmlContent><p>This is a long piece of HTML a few dozen lines long...</p></HtmlContent>
</MyControl> 

HtmlContentテンプレートはどこにありますか。通常、テンプレートが必要な場合は、代わりに PlaceHolder を使用します。

public class MyControl : CompositeControl 
{ 
    [TemplateContainer(typeof(PlaceHolder))] 
    [PersistenceMode(PersistenceMode.InnerProperty)] 
    public PlaceHolder HtmlContent { get; set; } 

    ... render stuff

}

MSDN の例を次に示します

于 2012-05-17T11:52:55.540 に答える