ChtmlTextWriter 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將一系列的 cHTML 特定字元和文字寫入 ASP.NET 伺服器控制件的輸出資料流。 ChtmlTextWriter 類別提供格式化功能,ASP.NET 伺服器控件在將 cHTML 內容轉譯至用戶端時使用。
public ref class ChtmlTextWriter : System::Web::UI::Html32TextWriter
public class ChtmlTextWriter : System.Web.UI.Html32TextWriter
type ChtmlTextWriter = class
inherit Html32TextWriter
Public Class ChtmlTextWriter
Inherits Html32TextWriter
- 繼承
範例
下列程式代碼範例示範如何建立衍生自 ChtmlTextWriter 類別 CustomChtmlTextWriter
名為的類別。 它會建立兩個建構函式,並覆寫 OnAttributeRender 方法,以防止 bgcolor
樣式屬性寫入 ChtmlTextWriter 對象的輸出數據流。 它也會建立名為 ChtmlCustomPageAdapter
的類別,該類別會定義一個方法,CreateCustomChtmlTextWriter
,這個方法會建立並傳回 CustomChtmlTextWriter
類別的實例。 接著,CustomChtmlTextWriter
會將頁面的 cHTML 內容轉譯為具有使用 cHTML 標記之瀏覽器的裝置。
// Create a class that derives from the
// ChtmlTextWriter class.
using System;
using System.IO;
using System.Web.UI;
using System.Web.UI.WebControls.Adapters;
namespace AspNet.Samples.CS
{
public class CustomChtmlTextWriter : ChtmlTextWriter
{
// Create two constructors for the new
// text writer.
public CustomChtmlTextWriter(TextWriter writer) : base(writer, DefaultTabString)
{
}
public CustomChtmlTextWriter(TextWriter writer, String tabString)
: base(writer, tabString)
{
}
// Override the OnAttributeRender method to
// not render the bgcolor attribute, which is
// not supported in CHTML.
protected override bool OnAttributeRender(string name, string value, HtmlTextWriterAttribute key)
{
if (String.Equals("bgcolor", name))
{
return false;
}
// Call the ChtmlTextWriter version of the
// the OnAttributeRender method.
return base.OnAttributeRender(name, value, key);
}
}
// Derive from the WebControlAdapter class,
// provide a CreateCustomChtmlTextWriter
// method to attach to the custom writer.
public class ChtmlCustomPageAdapter : WebControlAdapter
{
protected internal ChtmlTextWriter CreateCustomChtmlTextWriter(
TextWriter writer)
{
return new CustomChtmlTextWriter(writer);
}
}
}
' Create a class that derives from the
' ChtmlTextWriter class.
Imports System.IO
Imports System.Web.UI
Imports System.Web.UI.WebControls.Adapters
Namespace AspNet.Samples.VB
Public Class CustomChtmlTextWriter
Inherits ChtmlTextWriter
' Create two constructors for the new
' text writer.
Public Sub New(ByVal writer As TextWriter)
MyClass.New(writer, DefaultTabString)
End Sub
Public Sub New(ByVal writer As TextWriter, ByVal tabString As String)
MyBase.New(writer, tabString)
End Sub
' Override the OnAttributeRender method to
' not render the bgcolor attribute, which is
' not supported in CHTML.
Protected Overrides Function OnAttributeRender(ByVal name As String, ByVal value As String, ByVal key As HtmlTextWriterAttribute) As Boolean
If (String.Equals("bgcolor", name)) Then
Return False
End If
' Call the ChtmlTextWriter version of
' the OnAttributeRender method.
MyBase.OnAttributeRender(name, value, key)
End Function
End Class
' Derive from the WebControlAdapter class,
' provide a CreateCustomChtmlTextWriter
' method to attach the custom writer.
Public Class ChtmlCustomPageAdapter
Inherits WebControlAdapter
Protected Friend Function CreateCustomChtmlTextWriter( _
ByVal writer As TextWriter) As ChtmlTextWriter
Return New CustomChtmlTextWriter(writer)
End Function
End Class
End Namespace
備註
精簡 HTML 或 cHTML 是 HTML 2.0、HTML 3.2 和 HTML 4.0 的子集,其設計目的是在具有有限記憶體和 CPU 電源的裝置上轉譯,以及小型顯示器螢幕、有限的格式功能,以及有限的輸入選項(例如行動電話觸控板)。 因此,cHTML 不支援下列專案:
JPEG 影像。
表。
影像對應。
多個字元字型和樣式。
背景色彩和影像。
框架。
樣式表單。
ChtmlTextWriter 類別衍生自 Html32TextWriter 類別,其大部分功能是由 Html32TextWriter 和所有標記文字寫入器的基類所提供,也就是 HtmlTextWriter 類別。
建構函式
ChtmlTextWriter(TextWriter) |
初始化 ChtmlTextWriter 類別的新實例,這個實例會使用 DefaultTabString 常數縮排行。 |
ChtmlTextWriter(TextWriter, String) |
使用指定的行縮排,初始化 ChtmlTextWriter 類別的新實例。 |
欄位
CoreNewLine |
儲存用於這個 |
DefaultTabString |
表示單一索引標籤字元。 (繼承來源 HtmlTextWriter) |
DoubleQuoteChar |
表示引號 (“) 字元。 (繼承來源 HtmlTextWriter) |
EndTagLeftChars |
代表標記項目結尾標記的左角括弧和斜線標記 (</)。 (繼承來源 HtmlTextWriter) |
EqualsChar |
代表等號 ( |
EqualsDoubleQuoteString |
代表字串 (=) 中的等號 (=) 和雙引號 (“) 在一起。 (繼承來源 HtmlTextWriter) |
SelfClosingChars |
表示標記標記的空格和自我右斜線標記 (/)。 (繼承來源 HtmlTextWriter) |
SelfClosingTagEnd |
代表自我結尾標記專案的右斜線標記和右角括號(/>)。 (繼承來源 HtmlTextWriter) |
SemicolonChar |
表示分號 (;)。 (繼承來源 HtmlTextWriter) |
SingleQuoteChar |
代表單引號 (')。 (繼承來源 HtmlTextWriter) |
SlashChar |
代表斜線標記 (/)。 (繼承來源 HtmlTextWriter) |
SpaceChar |
表示空格 () 字元。 (繼承來源 HtmlTextWriter) |
StyleEqualsChar |
表示用來設定樣式屬性等於值之樣式屬性的樣式等於 ( |
TagLeftChar |
代表標記標記的左角括弧 (<)。 (繼承來源 HtmlTextWriter) |
TagRightChar |
代表標記標記的右角括弧 (>)。 (繼承來源 HtmlTextWriter) |
屬性
Encoding |
取得 HtmlTextWriter 物件用來將內容寫入頁面的編碼方式。 (繼承來源 HtmlTextWriter) |
FontStack |
取得要轉譯之 HTML 的字型資訊集合。 (繼承來源 Html32TextWriter) |
FormatProvider |
取得控制項格式設定的物件。 (繼承來源 TextWriter) |
GlobalSuppressedAttributes |
取得無法在 cHTML 專案上轉譯之全域隱藏屬性的 Hashtable 物件。 |
Indent |
取得或設定要縮排每個標記行開頭的定位點位置數目。 (繼承來源 HtmlTextWriter) |
InnerWriter |
取得或設定寫入標記項目內部內容的文字寫入器。 (繼承來源 HtmlTextWriter) |
NewLine |
取得或設定 HtmlTextWriter 物件所使用的行終止符字串。 (繼承來源 HtmlTextWriter) |
RecognizedAttributes |
取得可在 cHTML 專案上轉譯之已辨識屬性的 Hashtable 物件。 |
ShouldPerformDivTableSubstitution |
取得或設定布爾值,指出是否要將 |
SupportsBold |
取得或設定布爾值,指出要求裝置是否支援粗體 HTML 文字。 使用 SupportsBold 屬性,有條件地將粗體文字轉譯至 Html32TextWriter 輸出數據流。 (繼承來源 Html32TextWriter) |
SupportsItalic |
取得或設定布爾值,指出要求裝置是否支援斜體 HTML 文字。 使用 SupportsItalic 屬性,有條件地將斜體文字轉譯至 Html32TextWriter 輸出數據流。 (繼承來源 Html32TextWriter) |
SuppressedAttributes |
取得未在 cHTML 專案上呈現之使用者指定隱藏屬性的 Hashtable 物件。 |
TagKey |
取得或設定指定標記專案的 HtmlTextWriterTag 值。 (繼承來源 HtmlTextWriter) |
TagName |
取得或設定要轉譯之標記項目的標記名稱。 (繼承來源 HtmlTextWriter) |