TextBox.Render(HtmlTextWriter) Method

Definition

Renders the TextBox control to the specified HtmlTextWriter object.

protected:
 override void Render(System::Web::UI::HtmlTextWriter ^ writer);
protected public:
 override void Render(System::Web::UI::HtmlTextWriter ^ writer);
protected override void Render (System.Web.UI.HtmlTextWriter writer);
protected internal override void Render (System.Web.UI.HtmlTextWriter writer);
override this.Render : System.Web.UI.HtmlTextWriter -> unit
Protected Overrides Sub Render (writer As HtmlTextWriter)
Protected Friend Overrides Sub Render (writer As HtmlTextWriter)

Parameters

writer
HtmlTextWriter

The HtmlTextWriter that receives the rendered output.

Examples

The following code example demonstrates how to override the Render method in a custom server control so that the TextBox control is always displayed with an image.

Important

This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see Script Exploits Overview.

<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS.Controls" Assembly="Samples.AspNet.CS" %>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
        <title>Custom TextBox - Render - C# Example</title>
    </head>
    <body>
        <form id="Form1" method="post" runat="server">
            <h3>Custom TextBox - Render - C# Example</h3>
            
            <aspSample:CustomTextBoxRender 
              id="TextBox1" 
              runat="server">Hello World!
            </aspSample:CustomTextBoxRender>
            
        </form>
    </body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
        <title>Custom TextBox - Render - VB.NET Example</title>
    </head>
    <body>
        <form id="Form1" method="post" runat="server">
            <h3>Custom TextBox - Render - VB.NET Example</h3>
            
            <aspSample:CustomTextBoxRender id="TextBox1" 
             runat="server">Hello World!</aspSample:CustomTextBoxRender>
        </form>
    </body>
</html>
using System.Web;
using System.Security.Permissions;

namespace Samples.AspNet.CS.Controls
{
  [AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Minimal)]
  public sealed class CustomTextBoxRender : System.Web.UI.WebControls.TextBox
  {
    protected override void Render(System.Web.UI.HtmlTextWriter writer)
    {
      // Create and render a new Image Web control.
      System.Web.UI.WebControls.Image image = new System.Web.UI.WebControls.Image();
      image.ID = "Image1";
      image.ImageUrl = "image.jpg";	
      image.AlternateText = "Image for TextBox1.";
      image.RenderControl(writer);

      // Create a BR tag.
      writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Br);

      // Call the base class's Render method.
      base.Render(writer);
    }
  }
}
Imports System.Web
Imports System.Security.Permissions

Namespace Samples.AspNet.VB.Controls
    <AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
    Public NotInheritable Class CustomTextBoxRender
        Inherits System.Web.UI.WebControls.TextBox

        Protected Overrides Sub Render(ByVal writer As System.Web.UI.HtmlTextWriter)

            ' Create and render a new Image Web control.
            Dim image As New System.Web.UI.WebControls.Image
            image.ID = "Image1"
            image.ImageUrl = "image.jpg"
            image.AlternateText = "Image for TextBox1."
            image.RenderControl(writer)

            ' Create a BR tag.
            writer.RenderBeginTag(System.Web.UI.HtmlTextWriterTag.Br)

            ' Call the base class's Render method.
            MyBase.Render(writer)
        End Sub
    End Class
End Namespace

Remarks

The Render method renders the begin tag and end tag of the TextBox control to the HtmlTextWriter object for output on the client. If the TextMode property is set to MultiLine, the content of the TextBox control is rendered as an HTML <textarea> element.

The Render method is used primarily by control developers extending the functionality of the TextBox control.

Applies to

See also