WebControl.AddAttributesToRender(HtmlTextWriter) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Dodaje atrybuty i style HTML, które należy renderować do określonego HtmlTextWriterTagelementu . Ta metoda jest używana głównie przez deweloperów kontrolek.
protected:
virtual void AddAttributesToRender(System::Web::UI::HtmlTextWriter ^ writer);
protected virtual void AddAttributesToRender (System.Web.UI.HtmlTextWriter writer);
abstract member AddAttributesToRender : System.Web.UI.HtmlTextWriter -> unit
override this.AddAttributesToRender : System.Web.UI.HtmlTextWriter -> unit
Protected Overridable Sub AddAttributesToRender (writer As HtmlTextWriter)
Parametry
- writer
- HtmlTextWriter
Element HtmlTextWriter reprezentujący strumień wyjściowy do renderowania zawartości HTML na kliencie.
Przykłady
W poniższym przykładzie pokazano, jak utworzyć klasę pochodzącą WebControl z klasy . Podstawowa implementacja AddAttributesToRender metody jest zastępowana w celu dodania atrybutów odpowiednich do klasy pochodnej w strumieniu wyjściowym HtmlTextWriter .
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);
}
}
}
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
<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
<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
End Class
End Namespace 'ControlTest
Uwagi
Aby renderować atrybuty i style dla kontrolki serwera sieci Web na kliencie, zazwyczaj wywołujesz AddAttribute metody i HtmlTextWriter.AddStyleAttribute , aby wstawić każdy atrybut i styl indywidualnie do strumienia wyjściowego HtmlTextWriter . Aby uprościć ten proces, ta metoda hermetyzuje wszystkie wywołania metod HtmlTextWriter.AddAttribute i HtmlTextWriter.AddStyleAttribute dla każdego atrybutu i stylu skojarzonego z kontrolką serwera sieci Web. Wszystkie atrybuty i style są wstawiane do strumienia wyjściowego HtmlTextWriter w jednym wywołaniu metody. Ta metoda jest zwykle zastępowana przez deweloperów kontrolek w klasach pochodnych, aby wstawić odpowiednie atrybuty i style do strumienia wyjściowego HtmlTextWriter dla klasy.
Uwaga
Nie AddAttributesToRender można użyć metody do wstawienia skryptu klienta. Aby użyć skryptu klienta, zobacz klasę ClientScriptManager .