TextBox.Render(HtmlTextWriter) 方法

定义

TextBox 控件呈现给指定的 HtmlTextWriter 对象。

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)

参数

writer
HtmlTextWriter

接收呈现输出的 HtmlTextWriter

示例

下面的代码示例演示如何重写 Render 自定义服务器控件中的方法, TextBox 以便始终显示带有图像的控件。

重要

此示例具有一个接受用户输入的文本框,这是一个潜在的安全威胁。 默认情况下,ASP.NET 网页验证用户输入是否不包含脚本或 HTML 元素。 有关详细信息,请参阅脚本侵入概述

<%@ 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

注解

该方法 Render 将控件的 TextBox 开始标记和结束标记呈现给 HtmlTextWriter 客户端输出的对象。 如果属性 TextMode 设置为 MultiLine,控件 TextBox 的内容将呈现为 HTML <textarea> 元素。

该方法 Render 主要用于控件开发人员扩展控件的功能 TextBox

适用于

另请参阅