共用方式為


HtmlTextWriter 類別

定義

將標記字元和文字寫入至 ASP.NET 伺服器控制輸出數據流。 這個類別提供格式化功能,ASP.NET 伺服器控制件在將標記轉譯至用戶端時使用。

public ref class HtmlTextWriter : System::IO::TextWriter
public class HtmlTextWriter : System.IO.TextWriter
type HtmlTextWriter = class
    inherit TextWriter
Public Class HtmlTextWriter
Inherits TextWriter
繼承
衍生

範例

下列程式代碼範例示範如何覆寫衍生自 Control 類別之自定義控件的 Render 方法。 程式代碼範例說明如何使用各種 HtmlTextWriter 方法、屬性和欄位。

// Overrides the Render method to write a <span> element
// that applies styles and attributes. 
protected override void Render(HtmlTextWriter writer) 
{     
    // Set attributes and values along with attributes and styles  
    // attribute defined for a <span> element.
    writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "alert('Hello');");
    writer.AddAttribute("CustomAttribute", "CustomAttributeValue");
    writer.AddStyleAttribute(HtmlTextWriterStyle.Color, "Red");
    writer.AddStyleAttribute("Customstyle", "CustomStyleValue");
    writer.RenderBeginTag(HtmlTextWriterTag.Span);
    // Create a space and indent the markup inside the 
    // <span> element.
    writer.WriteLine();
    writer.Indent++;
    writer.Write("Hello");
    writer.WriteLine();
    
    // Controls the encoding of markup attributes
    // for an <img> element. Simple known values 
    // do not need encoding.
    writer.AddAttribute(HtmlTextWriterAttribute.Alt, 
        "Encoding, \"Required\"", 
        true);
    writer.AddAttribute("myattribute", 
        "No "encoding " required", 
        false);
    writer.RenderBeginTag(HtmlTextWriterTag.Img);
    writer.RenderEndTag();
    writer.WriteLine();

    // Create a non-standard markup element.
    writer.RenderBeginTag("MyTag");
    writer.Write("Contents of MyTag");
    writer.RenderEndTag();
    writer.WriteLine();

    // Create a manually rendered <img> element
    // that contains an alt attribute.
    writer.WriteBeginTag("img");
    writer.WriteAttribute("alt", "A custom image.");
    writer.Write(HtmlTextWriter.TagRightChar);
    writer.WriteEndTag("img");
    writer.WriteLine();

    writer.Indent--;
    writer.RenderEndTag();
}
' Overrides the Render method to write a <span> element
' that applies styles and attributes.     
Protected Overrides Sub Render(ByVal writer As HtmlTextWriter)

    ' Set attributes and values along with attributes and styles
    ' attribute defined for a <span> element.
    writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "alert('Hello');")
    writer.AddAttribute("CustomAttribute", "CustomAttributeValue")
    writer.AddStyleAttribute(HtmlTextWriterStyle.Color, "Red")
    writer.AddStyleAttribute("CustomStyle", "CustomStyleValue")
    writer.RenderBeginTag(HtmlTextWriterTag.Span)

    '  Create a space and indent the markup inside the 
    ' <span> element.
    writer.WriteLine()
    writer.Indent += 1

    writer.Write("Hello")
    writer.WriteLine()

    ' Controls the encoding of markup attributes
    ' for an <img> element. Simple known values 
    ' do not need encoding.
    writer.AddAttribute(HtmlTextWriterAttribute.Alt, _
        "Encoding, ""Required""", _
        True)
    writer.AddAttribute("myattribute", _
        "No "encoding " required", _
        False)
    writer.RenderBeginTag(HtmlTextWriterTag.Img)
    writer.RenderEndTag()
    writer.WriteLine()

    ' Create a non-standard markup element.
    writer.RenderBeginTag("Mytag")
    writer.Write("Contents of MyTag")
    writer.RenderEndTag()
    writer.WriteLine()

    ' Create a manually rendered <img> element
    ' that contains an alt attribute.
    writer.WriteBeginTag("img")
    writer.WriteAttribute("alt", "A custom image.")
    writer.Write(HtmlTextWriter.TagRightChar)
    writer.WriteEndTag("img")

    writer.WriteLine()

    writer.Indent -= 1
    writer.RenderEndTag()

End Sub

備註

HtmlTextWriter 類別可用來將 HTML 4.0 轉譯至桌面瀏覽器。 HtmlTextWriter 也是 System.Web.UI 命名空間中所有標記寫入器的基類,包括 ChtmlTextWriterHtml32TextWriterXhtmlTextWriter 類別。 這些類別可用來為不同類型的標記撰寫元素、屬性和樣式和版面配置資訊。 此外,頁面和控件配接器類別會使用這些類別,這些類別會與每個標記語言相關聯。

在大部分情況下,ASP.NET 會自動針對要求裝置使用適當的寫入器。 不過,如果您建立自定義文字寫入器,或想要指定特定寫入器來轉譯特定裝置的頁面,則必須將寫入器對應至應用程式 .browser 檔案的 controlAdapters 區段中的頁面。

建構函式

HtmlTextWriter(TextWriter)

初始化使用預設索引標籤字串之 HtmlTextWriter 類別的新實例。

HtmlTextWriter(TextWriter, String)

使用指定的索引標籤字串字元,初始化 HtmlTextWriter 類別的新實例。

欄位

CoreNewLine

儲存用於這個 TextWriter的新行字元。

(繼承來源 TextWriter)
DefaultTabString

表示單一索引標籤字元。

DoubleQuoteChar

表示引號 (“) 字元。

EndTagLeftChars

代表標記項目結尾標記的左角括弧和斜線標記 (</)。

EqualsChar

代表等號 (=)。

EqualsDoubleQuoteString

代表字串 (=) 中的等號 (=) 和雙引號 (“) 在一起。

SelfClosingChars

表示標記標記的空格和自我右斜線標記 (/)。

SelfClosingTagEnd

代表自我結尾標記專案的右斜線標記和右角括號(/>)。

SemicolonChar

表示分號 (;)。

SingleQuoteChar

代表單引號 (')。

SlashChar

代表斜線標記 (/)。

SpaceChar

表示空格 () 字元。

StyleEqualsChar

表示用來設定樣式屬性等於值之樣式屬性的樣式等於 (:) 字元。

TagLeftChar

代表標記標記的左角括弧 (<)。

TagRightChar

代表標記標記的右角括弧 (>)。

屬性

Encoding

取得 HtmlTextWriter 物件用來將內容寫入頁面的編碼方式。

FormatProvider

取得控制項格式設定的物件。

(繼承來源 TextWriter)
Indent

取得或設定要縮排每個標記行開頭的定位點位置數目。

InnerWriter

取得或設定寫入標記項目內部內容的文字寫入器。

NewLine

取得或設定 HtmlTextWriter 物件所使用的行終止符字串。

TagKey

取得或設定指定標記專案的 HtmlTextWriterTag 值。

TagName

取得或設定要轉譯之標記項目的標記名稱。

方法

AddAttribute(HtmlTextWriterAttribute, String)

將標記屬性和屬性值加入至 HtmlTextWriter 物件使用後續呼叫 RenderBeginTag 方法所建立之專案的開頭標記。

AddAttribute(HtmlTextWriterAttribute, String, Boolean)

使用選擇性編碼,將標記屬性和屬性值加入至 HtmlTextWriter 物件使用後續呼叫 RenderBeginTag 方法所建立之專案的開頭標記。

AddAttribute(String, String)

將指定的標記屬性和值加入至 HtmlTextWriter 物件使用後續呼叫 RenderBeginTag 方法所建立之專案的開頭標記。

AddAttribute(String, String, Boolean)

使用選擇性編碼方式,將指定的標記屬性和值加入至 HtmlTextWriter 物件所建立之專案的開頭標記,以及後續呼叫 RenderBeginTag 方法。

AddAttribute(String, String, HtmlTextWriterAttribute)

將指定的標記屬性和值以及 HtmlTextWriterAttribute 列舉值加入至 HtmlTextWriter 物件建立的開頭標記,以及 RenderBeginTag 方法的後續呼叫。

AddStyleAttribute(HtmlTextWriterStyle, String)

將與指定之 HtmlTextWriterStyle 值相關聯的標記樣式屬性,以及屬性值加入至 RenderBeginTag 方法後續呼叫所建立的開頭標記標記。

AddStyleAttribute(String, String)

將指定的標記樣式屬性和屬性值加入至後續呼叫 RenderBeginTag 方法所建立的開頭標記標記。

AddStyleAttribute(String, String, HtmlTextWriterStyle)

將指定的標記樣式屬性和屬性值,以及 HtmlTextWriterStyle 列舉值,新增至後續呼叫 RenderBeginTag 方法所建立的開頭標記標記。

BeginRender()

通知 HtmlTextWriter 物件或衍生類別的物件,控件即將轉譯。

Close()

關閉 HtmlTextWriter 物件,並釋放與其相關聯的任何系統資源。

CreateObjRef(Type)

建立物件,其中包含產生用來與遠端物件通訊之 Proxy 所需的所有相關信息。

(繼承來源 MarshalByRefObject)
Dispose()

釋放 TextWriter 物件所使用的所有資源。

(繼承來源 TextWriter)
Dispose(Boolean)

釋放 TextWriter 所使用的 Unmanaged 資源,並選擇性地釋放 Managed 資源。

(繼承來源 TextWriter)
DisposeAsync()

以異步方式釋放 TextWriter 物件所使用的所有資源。

(繼承來源 TextWriter)
EncodeAttributeValue(HtmlTextWriterAttribute, String)

根據目前內容之 HttpRequest 物件的需求,編碼指定之標記屬性的值。

EncodeAttributeValue(String, Boolean)

根據目前內容之 HttpRequest 物件的需求,編碼指定之標記屬性的值。

EncodeUrl(String)

將指定 URL 中的空白轉換成字串 「%20」 ,以執行最少的 URL 編碼。

EndRender()

通知控件已完成轉譯的 HtmlTextWriter 物件或衍生類別的物件。 您可以使用這個方法來關閉在 BeginRender() 方法中開啟的任何標記專案。

EnterStyle(Style)

寫入 <span> 項目的開頭標記,其中包含實作指定樣式之版面配置和字元格式的屬性。

EnterStyle(Style, HtmlTextWriterTag)

寫入標記專案的開頭標記,其中包含實作指定樣式之版面配置和字元格式的屬性。

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
ExitStyle(Style)

寫入 <span> 項目的結尾標記,以結束指定的版面配置和字元格式設定。

ExitStyle(Style, HtmlTextWriterTag)

寫入指定標記項目的結尾標記,以結束指定的版面配置和字元格式設定。

FilterAttributes()

拿掉頁面或網頁伺服器控制件所有屬性上的所有標記和樣式屬性。

Flush()

清除目前 HtmlTextWriter 物件的所有緩衝區,並導致任何緩衝的數據寫入輸出數據流。

FlushAsync()

以異步方式清除目前寫入器的所有緩衝區,並導致任何緩衝的數據寫入基礎裝置。

(繼承來源 TextWriter)
FlushAsync(CancellationToken)

以異步方式清除目前寫入器的所有緩衝區,並導致任何緩衝的數據寫入基礎裝置。

(繼承來源 TextWriter)
GetAttributeKey(String)

取得指定屬性的對應 HtmlTextWriterAttribute 列舉值。

GetAttributeName(HtmlTextWriterAttribute)

取得與指定之 HtmlTextWriterAttribute 值相關聯的標記屬性名稱。

GetHashCode()

做為預設哈希函式。

(繼承來源 Object)
GetLifetimeService()
已淘汰.

擷取控制這個實例存留期原則的目前存留期服務物件。

(繼承來源 MarshalByRefObject)
GetStyleKey(String)

取得指定樣式的 HtmlTextWriterStyle 列舉值。

GetStyleName(HtmlTextWriterStyle)

取得與指定之 HtmlTextWriterStyle 列舉值相關聯的標記樣式屬性名稱。

GetTagKey(String)

取得與指定標記項目相關聯的 HtmlTextWriterTag 列舉值。

GetTagName(HtmlTextWriterTag)

取得與指定之 HtmlTextWriterTag 列舉值相關聯的標記專案。

GetType()

取得目前實例的 Type

(繼承來源 Object)
InitializeLifetimeService()
已淘汰.

取得存留期服務物件,以控制這個實例的存留期原則。

(繼承來源 MarshalByRefObject)
IsAttributeDefined(HtmlTextWriterAttribute)

判斷指定的標記屬性及其值是否要在下一次呼叫 RenderBeginTag 方法時呈現。

IsAttributeDefined(HtmlTextWriterAttribute, String)

判斷指定的標記屬性及其值是否要在下一次呼叫 RenderBeginTag 方法時呈現。

IsStyleAttributeDefined(HtmlTextWriterStyle)

判斷指定的標記樣式屬性是否要在下一次呼叫 RenderBeginTag 方法時呈現。

IsStyleAttributeDefined(HtmlTextWriterStyle, String)

判斷指定的標記樣式屬性及其值是否要在下一次呼叫 RenderBeginTag 方法時呈現。

IsValidFormAttribute(String)

檢查屬性,以確保它可以在 <form> 標記專案的開頭標記中轉譯。

MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
MemberwiseClone(Boolean)

建立目前 MarshalByRefObject 對象的淺層複本。

(繼承來源 MarshalByRefObject)
OnAttributeRender(String, String, HtmlTextWriterAttribute)

判斷指定的標記屬性及其值是否可以轉譯至目前的標記專案。

OnStyleAttributeRender(String, String, HtmlTextWriterStyle)

判斷指定的標記樣式屬性及其值是否可以轉譯至目前的標記專案。

OnTagRender(String, HtmlTextWriterTag)

判斷指定的標記專案是否會轉譯至要求的頁面。

OutputTabs()

寫入一系列索引標籤標字串,代表標記字元行的縮排層級。

PopEndTag()

從轉譯的專案清單中移除最近儲存的標記專案。

PushEndTag(String)

儲存指定的標記專案,以供稍後在產生標記項目的結束標記時使用。

RegisterAttribute(String, HtmlTextWriterAttribute)

從來源檔案註冊標記屬性,無論是常值還是動態產生,以便正確轉譯給要求用戶端。

RegisterStyle(String, HtmlTextWriterStyle)

從來源檔案註冊標記樣式屬性,無論是常值還是動態產生,以便正確轉譯至要求用戶端。

RegisterTag(String, HtmlTextWriterTag)

從來源檔案註冊標記,無論是常值還是動態產生,以便正確轉譯至要求用戶端。

RenderAfterContent()

將內容之後和標記項目結尾標記之前所發生的任何文字或間距寫入標記輸出數據流。

RenderAfterTag()

寫入標記項目結尾標記之後所發生的任何間距或文字。

RenderBeforeContent()

在內容之前和標記專案的開頭標記之後寫入任何文字或間距。

RenderBeforeTag()

寫入標記項目開頭標記之前所發生的任何文字或間距。

RenderBeginTag(HtmlTextWriterTag)

將與指定之 HtmlTextWriterTag 列舉值相關聯的標記專案的開頭標記寫入輸出數據流。

RenderBeginTag(String)

將指定標記項目的開頭標記寫入輸出數據流。

RenderEndTag()

將標記項目的結束標記寫入輸出數據流。

ToString()

傳回表示目前 物件的字串。

(繼承來源 Object)
Write(Boolean)

將布爾值的文字表示寫入輸出數據流,以及任何暫止的定位間距。

Write(Char)

將 Unicode 字元的文字表示寫入輸出資料流,以及任何暫止的製表元間距。

Write(Char[])

將 Unicode 字元陣列的文字表示寫入輸出資料流,以及任何暫止的製表元間距。

Write(Char[], Int32, Int32)

將 Unicode 字元子陣列的文字表示寫入輸出資料流,以及任何暫止的製表符間距。

Write(Decimal)

將十進位值的文字表示寫入文字數據流。

(繼承來源 TextWriter)
Write(Double)

將雙精確度浮點數的文字表示寫入輸出數據流,以及任何暫止的製表符間距。

Write(Int32)

將 32 位元組帶正負號整數的文字表示寫入輸出數據流,以及任何暫止的定位間距。

Write(Int64)

將 64 位元組帶正負號整數的文字表示寫入輸出數據流,以及任何暫止的製表符間距。

Write(Object)

將物件的文字表示寫入輸出數據流,以及任何暫止的製表符間距。

Write(ReadOnlySpan<Char>)

將字元範圍寫入文字數據流。

(繼承來源 TextWriter)
Write(Single)

將單精度浮點數的文字表示寫入輸出數據流,以及任何暫止的定位間距。

Write(String)

將指定的字串寫入輸出數據流,以及任何暫止的製表位。

Write(String, Object)

使用與 Format(String, Object) 方法相同的語意,以及任何暫止的製表符間距,將製表符字串和格式化字串寫入輸出數據流。

Write(String, Object, Object)

將包含兩個物件的文字表示格式字串寫入輸出數據流,以及任何暫止的製表符間距。 這個方法會使用與 Format(String, Object, Object) 方法相同的語意。

Write(String, Object, Object, Object)

使用與 Format(String, Object, Object, Object) 方法相同的語意,將格式化字串寫入文字數據流。

(繼承來源 TextWriter)
Write(String, Object[])

將包含物件數位文字表示的格式化字串寫入輸出數據流,以及任何暫止的製表符間距。 這個方法會使用與 Format(String, Object[]) 方法相同的語意。

Write(String, ReadOnlySpan<Object>)

使用與 Format(String, ReadOnlySpan<Object>)相同的語意,將格式化字串寫入文字數據流。

(繼承來源 TextWriter)
Write(StringBuilder)

將字串產生器寫入至文字數據流。

(繼承來源 TextWriter)
Write(UInt32)

將 4 位元組無符號整數的文字表示寫入文字數據流。

(繼承來源 TextWriter)
Write(UInt64)

將8位元組無符號整數的文字表示寫入文字數據流。

(繼承來源 TextWriter)
WriteAsync(Char)

以異步方式將字元寫入文字數據流。

(繼承來源 TextWriter)
WriteAsync(Char[])

以異步方式將字元陣列寫入文字數據流。

(繼承來源 TextWriter)
WriteAsync(Char[], Int32, Int32)

以異步方式將字元的子數位寫入文字數據流。

(繼承來源 TextWriter)
WriteAsync(ReadOnlyMemory<Char>, CancellationToken)

以異步方式將字元記憶體區域寫入文字數據流。

(繼承來源 TextWriter)
WriteAsync(String)

以異步方式將字串寫入文字數據流。

(繼承來源 TextWriter)
WriteAsync(StringBuilder, CancellationToken)

以異步方式將字串產生器寫入至文字數據流。

(繼承來源 TextWriter)
WriteAttribute(String, String)

將指定的標記屬性和值寫入輸出資料流。

WriteAttribute(String, String, Boolean)

將指定的標記屬性和值寫入輸出數據流,如果指定,則會寫入編碼的值。

WriteBeginTag(String)

將指定之標記專案的任何定位間距和開頭標記寫入輸出數據流。

WriteBreak()

<br /> 標記專案寫入輸出數據流。

WriteEncodedText(String)

編碼要求裝置的指定文字,然後將它寫入輸出數據流。

WriteEncodedUrl(String)

編碼指定的 URL,然後將它寫入輸出數據流。 URL 可能包含參數。

WriteEncodedUrlParameter(String)

編碼所要求裝置的指定 URL 參數,然後將它寫入輸出數據流。

WriteEndTag(String)

寫入指定標記專案的任何定位間距和結尾標記。

WriteFullBeginTag(String)

將指定之標記專案的任何定位間距和開頭標記寫入輸出數據流。

WriteLine()

將行終止符字串寫入輸出數據流。

WriteLine(Boolean)

將任何暫止的製表位和布爾值的文字表示寫入輸出數據流,後面接著行終止符字串。

WriteLine(Char)

將任何暫止的製表位和 Unicode 字元,後面接著行終止符字串寫入輸出數據流。

WriteLine(Char[])

將任何暫止的定位間距和 Unicode 字元陣列,後面接著行終止符字串寫入輸出數據流。

WriteLine(Char[], Int32, Int32)

將任何暫止的製表位和 Unicode 字元的子陣列,後面接著行終止符字串寫入輸出數據流。

WriteLine(Decimal)

將十進位值的文字表示寫入文字數據流,後面接著行終止符。

(繼承來源 TextWriter)
WriteLine(Double)

將雙精確度浮點數的暫止定位間距和文字表示寫入輸出數據流,後面接著行終止符字串。

WriteLine(Int32)

將任何暫止的定位間距和 32 位元組帶正負號整數的文字表示寫入輸出資料流,後面接著行終止符字串。

WriteLine(Int64)

將任何暫止的定位間距和64位元組帶正負號整數的文字表示寫入輸出資料流,後面接著行終止符字串。

WriteLine(Object)

將任何暫止的定位間距和物件的文字表示,後面接著行終止符字串寫入輸出數據流。

WriteLine(ReadOnlySpan<Char>)

將字元範圍的文字表示寫入文字數據流,後面接著行終止符。

(繼承來源 TextWriter)
WriteLine(Single)

將單精度浮點數的任何暫止定位間距和文字表示寫入輸出數據流,後面接著行終止符字串。

WriteLine(String)

將任何暫止的製表位和文字字串,後面接著行終止符字串寫入輸出數據流。

WriteLine(String, Object)

將任何暫止的製表位和包含物件文字表示的格式化字串串,後面接著行終止符字串寫入輸出數據流。

WriteLine(String, Object, Object)

將任何暫止的定位間距和格式化字串寫入輸出數據流,其中包含兩個 對象的文字表示法,後面接著行終止符字串。

WriteLine(String, Object, Object, Object)

使用與 Format(String, Object)相同的語意,將格式化字串和新行寫出至文字數據流。

(繼承來源 TextWriter)
WriteLine(String, Object[])

將任何暫止的定位間距和格式化字串寫入至輸出數據流,其中包含物件陣列的文字表示法,後面接著行終止符字串。

WriteLine(String, ReadOnlySpan<Object>)

使用與 Format(String, ReadOnlySpan<Object>)相同的語意,將格式化字串和新行寫出至文字數據流。

(繼承來源 TextWriter)
WriteLine(StringBuilder)

將字串產生器的文字表示寫入文字數據流,後面接著行終止符。

(繼承來源 TextWriter)
WriteLine(UInt32)

將任何暫止的定位間距和 4 位元組無符號整數的文字表示寫入輸出數據流,後面接著行終止符字串。

WriteLine(UInt64)

將8位元組無符號整數的文字表示寫入文字數據流,後面接著行終止符。

(繼承來源 TextWriter)
WriteLineAsync()

以異步方式將行終止符寫入文字數據流。

(繼承來源 TextWriter)
WriteLineAsync(Char)

以異步方式將字元寫入文字數據流,後面接著行終止符。

(繼承來源 TextWriter)
WriteLineAsync(Char[])

以異步方式將字元陣列寫入文字數據流,後面接著行終止符。

(繼承來源 TextWriter)
WriteLineAsync(Char[], Int32, Int32)

以異步方式將字元的子陣列寫入文字數據流,後面接著行終止符。

(繼承來源 TextWriter)
WriteLineAsync(ReadOnlyMemory<Char>, CancellationToken)

以異步方式將字元記憶體區域的文字表示寫入文字數據流,後面接著行終止符。

(繼承來源 TextWriter)
WriteLineAsync(String)

以異步方式將字串寫入文字數據流,後面接著行終止符。

(繼承來源 TextWriter)
WriteLineAsync(StringBuilder, CancellationToken)

以異步方式將字串產生器的文字表示寫入文字數據流,後面接著行終止符。

(繼承來源 TextWriter)
WriteLineNoTabs(String)

將字串,後面接著行終止符字串寫入輸出數據流。 這個方法會忽略任何指定的製表位。

WriteStyleAttribute(String, String)

將指定的樣式屬性寫入輸出資料流。

WriteStyleAttribute(String, String, Boolean)

將指定的樣式屬性和值寫入輸出數據流,並在指定時編碼值。

WriteUrlEncodedString(String, Boolean)

寫入指定的字串,並根據URL需求進行編碼。

明確介面實作

IDisposable.Dispose()

如需此成員的描述,請參閱 Dispose()

(繼承來源 TextWriter)

適用於

另請參閱