WebControl.AddAttributesToRender メソッド
アセンブリ: System.Web (system.web.dll 内)


Web サーバー コントロールの属性とスタイルをクライアントに表示するには、通常、AddAttribute メソッドと System.Web.UI.HtmlTextWriter.AddStyleAttribute メソッドを呼び出して、各属性とスタイルを HtmlTextWriter 出力ストリームに個別に挿入します。このメソッドは、プロセスを簡略化するために、Web サーバー コントロールに関連付けられたすべての属性とスタイルに対する System.Web.UI.HtmlTextWriter.AddAttribute メソッドと System.Web.UI.HtmlTextWriter.AddStyleAttribute メソッドへのすべての呼び出しをカプセル化します。すべての属性およびスタイルが、1 回のメソッドの呼び出しで HtmlTextWriter 出力ストリームに挿入されます。このメソッドは、通常、クラスの HtmlTextWriter 出力ストリームに適切な属性およびスタイルを挿入するために、コントロールの開発者によって派生クラスでオーバーライドされます。
![]() |
---|
AddAttributesToRender メソッドを使用してクライアント スクリプトを挿入することはできません。クライアント スクリプトを使用するには、ClientScriptManager クラスのトピックを参照してください。 |

WebControl クラスから派生したクラスを作成する方法の例を次に示します。AddAttributesToRender メソッドの基本実装は、HtmlTextWriter 出力ストリームの派生クラスに適切な属性を追加するためにオーバーライドされます。
Imports System Imports System.Web.UI Imports System.Web.UI.WebControls Namespace ControlTest ' Renders the following HTML: ' <span onclick="alert('Hello');" style="color:Red;">Custom Contents</span> Public Class MyWebControl Inherits WebControl Public Sub New() MyBase.New(HtmlTextWriterTag.Span) End Sub 'New <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _ Protected Overrides Sub AddAttributesToRender(writer As HtmlTextWriter) writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "alert('Hello');") writer.AddStyleAttribute(HtmlTextWriterStyle.Color, "Red") MyBase.AddAttributesToRender(writer) End Sub 'AddAttributesToRender <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _ Protected Overrides Sub RenderContents(writer As HtmlTextWriter) writer.Write("Custom Contents") MyBase.RenderContents(writer) End Sub 'RenderContents End Class 'MyWebControl End Namespace 'ControlTest
namespace ControlTest { using System; using System.Web.UI; using System.Web.UI.WebControls; // Renders the following HTML: // <span onclick="alert('Hello');" style="color:Red;">Custom Contents</span> public class MyWebControl: WebControl { public MyWebControl() : base(HtmlTextWriterTag.Span) { } [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")] protected override void AddAttributesToRender(HtmlTextWriter writer) { writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "alert('Hello');"); writer.AddStyleAttribute(HtmlTextWriterStyle.Color, "Red"); base.AddAttributesToRender(writer); } [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")] protected override void RenderContents(HtmlTextWriter writer) { writer.Write("Custom Contents"); base.RenderContents(writer); } } }
package ControlTest; import System.*; import System.Web.UI.*; import System.Web.UI.WebControls.*; // Renders the following HTML: // <span onclick="alert('Hello');" style="color:Red;">Custom Contents</span> public class MyWebControl extends WebControl { public MyWebControl() { super(HtmlTextWriterTag.Span); } //MyWebControl protected void AddAttributesToRender(HtmlTextWriter writer) { writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "alert('Hello');"); writer.AddStyleAttribute(HtmlTextWriterStyle.Color, "Red"); super.AddAttributesToRender(writer); } //AddAttributesToRender /** @attribute System.Security.Permissions.PermissionSet(System.Security. Permissions.SecurityAction.Demand, Name = "FullTrust") */ protected void RenderContents(HtmlTextWriter writer) { writer.Write("Custom Contents"); super.RenderContents(writer); } //RenderContents } //MyWebControl

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 によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- WebControl.AddAttributesToRender メソッドのページへのリンク