LiteralControl クラス
アセンブリ: System.Web (system.web.dll 内)


ASP.NET は、すべての HTML 要素およびサーバー側の処理を必要とせずに読み取ることができるテキストを、このクラスのインスタンスにコンパイルします。たとえば、runat="server" の属性と値のペアを開始タグに含んでいない HTML 要素は、LiteralControl オブジェクトにコンパイルされます。LiteralControl オブジェクトはビューステートを保持しないため、LiteralControl オブジェクトの内容は要求ごとに再作成する必要があります。
リテラル コントロールは、テキスト ホルダとして動作します。つまり、リテラル コントロールからテキストを抽出し、親サーバー コントロールの ControlCollection コレクションから親の Controls プロパティを通じてリテラル コントロールを削除できます。したがって、LiteralControl クラスから派生したカスタム コントロールを開発する場合は、コントロールが LiteralControl.Render メソッドの呼び出しを使用してプリプロセス手順を行うのではなく、コントロール自体が必要なプリプロセス手順を実行するようにします。一般的に、このようにすると、Web アプリケーションの応答時間を短縮できます。
ControlCollection.Add メソッドまたは ControlCollection.Remove メソッドを使用すると、ページ コントロールまたはサーバー コントロールからリテラル コントロールをプログラムによって追加または削除できます。

Control.CreateChildControls メソッドをオーバーライドするときに、オーバーロードされた LiteralControl コンストラクタを使用する方法を次のコード例に示します。このコードでは、2 つの新しい LiteralControl オブジェクトと TextBox Web サーバー コントロールを現在のサーバー コントロールの Control.Controls プロパティに追加します。
' Add two LiteralControls that render HTML H3 elements and text. <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _ Protected Overrides Sub CreateChildControls() Me.Controls.Add(New LiteralControl("<h3>Value: ")) Dim Box As New TextBox Box.Text = "0" Me.Controls.Add(box) Me.Controls.Add(New LiteralControl("</h3>")) End Sub
// Add two LiteralControls that render HTML H3 elements and text. [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")] protected override void CreateChildControls() { this.Controls.Add(new LiteralControl("<h3>Value: ")); TextBox box = new TextBox(); box.Text = "0"; this.Controls.Add(box); this.Controls.Add(new LiteralControl("</h3>")); }
// Add two LiteralControls that render HTML H3 elements and text. protected void CreateChildControls() { this.get_Controls().Add(new LiteralControl("<h3>Value: ")); TextBox box = new TextBox(); box.set_Text("0"); this.get_Controls().Add(box); this.get_Controls().Add(new LiteralControl("</h3>")); } //CreateChildControls


System.Web.UI.Control
System.Web.UI.LiteralControl


Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- LiteralControl クラスのページへのリンク