通过


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 控件开发人员使用。

适用于

另请参阅