Export (0) Print
Expand All

WebControl.AddAttributesToRender Method

Adds HTML attributes and styles that need to be rendered to the specified System.Web.UI.HtmlTextWriter. This method is used primarily by control developers.

[Visual Basic]
Protected Overridable Sub AddAttributesToRender( _
   ByVal writer As HtmlTextWriter _
)
[C#]
protected virtual void AddAttributesToRender(
 HtmlTextWriter writer
);
[C++]
protected: virtual void AddAttributesToRender(
 HtmlTextWriter* writer
);
[JScript]
protected function AddAttributesToRender(
   writer : HtmlTextWriter
);

Parameters

writer
A System.Web.UI.HtmlTextWriter that represents the output stream to render HTML content on the client.

Remarks

To render attributes and styles for a Web sServer control on the client, you typically call the HtmlTextWriter.AddAttribute and HtmlTextWriter.AddStyleAttribute methods to insert each attribute and style individually to the System.Web.UI.HtmlTextWriter output stream. To simplify the process, this method encapsulates all calls to the HtmlTextWriter.AddAttribute and HtmlTextWriter.AddStyleAttribute methods for every attribute and style associated with the Web server control. All attributes and styles are inserted into the System.Web.UI.HtmlTextWriter output stream in a single method call. This method is typically overridden by control developers in derived classes to insert the appropriate attributes and styles to the System.Web.UI.HtmlTextWriter output stream for the class.

Example

[Visual Basic, C#, C++] The following example demonstrates how to create a class that derives from the WebControl class. The base implementation of the AddAttributesToRender method is overridden to add attributes appropriate to the derived class in the System.Web.UI.HtmlTextWriter output stream.

[Visual Basic] 

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


[C#] 
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);
      }
   }
}


[C++] 
#using <mscorlib.dll>
#using <System.Web.dll>
#using <System.dll>
using namespace System;
using namespace System::Web::UI;
using namespace System::Web::UI::WebControls;

// Renders the following HTML:
// <span onclick=S"alert('Hello');" style=S"color:Red;">Custom Contents</span>

public __gc class MyWebControl : public WebControl 
{
public:
   MyWebControl() : WebControl(HtmlTextWriterTag::Span) { }

protected:

   [System::Security::Permissions::PermissionSet(System::Security::Permissions::SecurityAction::Demand, Name="FullTrust")]
   void AddAttributesToRender(HtmlTextWriter* writer) 
   {
      writer->AddAttribute(HtmlTextWriterAttribute::Onclick, S"alert('Hello');");
      writer->AddStyleAttribute(HtmlTextWriterStyle::Color, S"Red");
      __super::AddAttributesToRender(writer);
   }

protected:

   [System::Security::Permissions::PermissionSet(System::Security::Permissions::SecurityAction::Demand, Name="FullTrust")]
   void RenderContents(HtmlTextWriter* writer) 
   {
      writer->Write(S"Custom Contents");
      __super::RenderContents(writer);
   }
};

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 2000, Windows XP Professional, Windows Server 2003 family

See Also

WebControl Class | WebControl Members | System.Web.UI.WebControls Namespace | HtmlTextWriter.AddAttribute | HtmlTextWriter.AddStyleAttribute | System.Web.UI.HtmlTextWriter

Show:
© 2014 Microsoft