TextBox.Render(HtmlTextWriter) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將 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 Web 網頁會驗證使用者輸入未包含指令碼或 HTML 項目。 如需詳細資訊,請參閱 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
備註
方法 Render 會將控件的 TextBox 開始標記和結束標籤轉譯為物件, HtmlTextWriter 以供客戶端輸出。
TextMode如果 屬性設定MultiLine為 ,控件的內容TextBox會轉譯為 HTML <textarea>
元素。
方法 Render 主要是由控件開發人員使用,以擴充控件的功能 TextBox 。