次の方法で共有


Html32TextWriter クラス

一連の HTML 3.2 固有の文字とテキストを ASP.NET サーバー コントロールの出力ストリームに書き込みます。Html32TextWriter クラスには、ASP.NET サーバー コントロールが HTML 3.2 の内容をクライアントに表示するときに使用する書式設定機能が用意されています。

名前空間: System.Web.UI
アセンブリ: System.Web (system.web.dll 内)

構文

'宣言
Public Class Html32TextWriter
    Inherits HtmlTextWriter
'使用
Dim instance As Html32TextWriter
public class Html32TextWriter : HtmlTextWriter
public ref class Html32TextWriter : public HtmlTextWriter
public class Html32TextWriter extends HtmlTextWriter
public class Html32TextWriter extends HtmlTextWriter
適用できません。

解説

Html32TextWriter クラスは、HtmlTextWriter クラスの代替クラスです。HTML 4.0 のスタイル属性を HTML 3.2 の等価のタグと属性に変換します。このクラスは、HTML テーブルを使用して、色やフォントなどの属性の反映を標準化したものです。ASP.NET は、HttpBrowserCapabilities クラスの TagWriter プロパティをチェックして、HTML 3.2 以前のブラウザに対してこのクラスを自動的に使用します。HTML 3.2 マークアップを使用するデバイスをターゲットとするカスタム ページ アダプタまたはカスタム コントロール アダプタを作成しない場合には、Html32TextWriter クラスのインスタンスを明示的に作成する必要はありません。

ページとコントロールのレンダリングをカスタマイズする方法の詳細については、「チュートリアル : カスタム サーバー コントロールの開発と使用」を参照してください。

使用例

Html32TextWriter クラスから派生した CustomHtml32TextWriter という名前のクラスを使用する方法を次のコード例に示します。CustomHtml32TextWriter は、HtmlTextWriter クラスによって作成されるパターンに従った 2 つのコンストラクタを作成し、RenderBeforeContentRenderAfterContentRenderBeforeTag、および RenderAfterTag の各メソッドをオーバーライドしています。

' Create a custom HtmlTextWriter class that overrides 
' the RenderBeforeContent and RenderAfterContent methods.
Imports System
Imports System.IO
Imports System.Web.UI

Namespace Examples.AspNet


   Public Class CustomHtml32TextWriter
      Inherits Html32TextWriter

        ' Create a constructor for the class
        ' that takes a TextWriter as a parameter.
        Public Sub New(ByVal writer As TextWriter)
            Me.New(writer, DefaultTabString)
        End Sub

        ' Create a constructor for the class that takes
        ' a TextWriter and a string as parameters. 
        Public Sub New(ByVal writer As TextWriter, ByVal tabString As String)
            MyBase.New(writer, tabString)
        End Sub

        ' Override the RenderBeforeContent method to render
        ' styles before rendering the content of a <th> element.
        Protected Overrides Function RenderBeforeContent() As String
            ' Check the TagKey property. If its value is
            ' HtmlTextWriterTag.TH, check the value of the 
            ' SupportsBold property. If true, return the
            ' opening tag of a <b> element; otherwise, render
            ' the opening tag of a <font> element with a color
            ' attribute set to the hexadecimal value for red.
            If TagKey = HtmlTextWriterTag.Th Then
                If (SupportsBold) Then
                    Return "<b>"
                Else
                    Return "<font color=""FF0000"">"
                End If
            End If

            ' Check whether the element being rendered
            ' is an <H4> element. If it is, check the 
            ' value of the SupportsItalic property.
            ' If true, render the opening tag of the <i> element
            ' prior to the <H4> element's content; otherwise, 
            ' render the opening tag of a <font> element 
            ' with a color attribute set to the hexadecimal
            ' value for navy blue.
            If TagKey = HtmlTextWriterTag.H4 Then
                If (SupportsItalic) Then
                    Return "<i>"
                Else
                    Return "<font color=""000080"">"
                End If
            End If
            ' Call the base method.
            Return MyBase.RenderBeforeContent()
        End Function

        ' Override the RenderAfterContent method to close
        ' styles opened during the call to the RenderBeforeContent
        ' method.
        Protected Overrides Function RenderAfterContent() As String

            ' Check whether the element being rendered is a <th> element.
            ' If so, and the requesting device supports bold formatting,
            ' render the closing tag of the <b> element. If not,
            ' render the closing tag of the <font> element.
            If TagKey = HtmlTextWriterTag.Th Then
                If SupportsBold Then
                    Return "</b>"
                Else
                    Return "</font>"
                End If
            End If

            ' Check whether the element being rendered is an <H4>.
            ' element. If so, and the requesting device supports italic
            ' formatting, render the closing tag of the <i> element.
            ' If not, render the closing tag of the <font> element.
            If TagKey = HtmlTextWriterTag.H4 Then
                If (SupportsItalic) Then
                    Return "</i>"
                Else
                    Return "</font>"
                End If
            End If
            ' Call the base method.
            Return MyBase.RenderAfterContent()
        End Function

        ' Override the RenderBeforeTag method to render the
        ' opening tag of a <small> element to modify the text size of 
        ' any <a> elements that this writer encounters.
        Protected Overrides Function RenderBeforeTag() As String
            ' Check whether the element being rendered is an 
            ' <a> element. If so, render the opening tag
            ' of the <small> element; otherwise, call the base method.
            If TagKey = HtmlTextWriterTag.A Then
                Return "<small>"
            End If
            Return MyBase.RenderBeforeTag()
        End Function

        ' Override the RenderAfterTag method to render
        ' close any elements opened in the RenderBeforeTag
        ' method call.
        Protected Overrides Function RenderAfterTag() As String
            ' Check whether the element being rendered is an
            ' <a> element. If so, render the closing tag of the
            ' <small> element; otherwise, call the base method.
            If TagKey = HtmlTextWriterTag.A Then
                Return "</small>"
            End If
            Return MyBase.RenderAfterTag()
        End Function
    End Class
End Namespace
using System.IO;
using System.Web.UI;

namespace Examples.AspNet
{
    public class CustomHtml32TextWriter : Html32TextWriter
    {
        // Create a constructor for the class
        // that takes a TextWriter as a parameter.
        public CustomHtml32TextWriter(TextWriter writer) 
            : this(writer, DefaultTabString) 
        {
        }

        // Create a constructor for the class that takes
        // a TextWriter and a string as parameters.
        public CustomHtml32TextWriter(TextWriter writer, String tabString) 
            : base(writer, tabString)
        {
        }
        
        // Override the RenderBeforeContent method to render
        // styles before rendering the content of a <th> element.
        protected override string RenderBeforeContent()
        {
            // Check the TagKey property. If its value is
            // HtmlTextWriterTag.TH, check the value of the 
            // SupportsBold property. If true, return the
            // opening tag of a <b> element; otherwise, render
            // the opening tag of a <font> element with a color
            // attribute set to the hexadecimal value for red.
            if (TagKey == HtmlTextWriterTag.Th)
            {
                if (SupportsBold)
                    return "<b>";
                else
                    return "<font color=\"FF0000\">";
            }

            // Check whether the element being rendered
            // is an <H4> element. If it is, check the 
            // value of the SupportsItalic property.
            // If true, render the opening tag of the <i> element
            // prior to the <H4> element's content; otherwise, 
            // render the opening tag of a <font> element 
            // with a color attribute set to the hexadecimal
            // value for navy blue.
            if (TagKey == HtmlTextWriterTag.H4)
            {
                if (SupportsItalic)
                    return "<i>";
                else
                    return "<font color=\"000080\">";
            }
            // Call the base method.
            return base.RenderBeforeContent();
        }

        // Override the RenderAfterContent method to close
        // styles opened during the call to the RenderBeforeContent
        // method.
        protected override string RenderAfterContent()
        {
            // Check whether the element being rendered is a <th> element.
            // If so, and the requesting device supports bold formatting,
            // render the closing tag of the <b> element. If not,
            // render the closing tag of the <font> element.
            if (TagKey == HtmlTextWriterTag.Th)
            {
                if (SupportsBold)
                    return "</b>";
                else
                    return "</font>";
            }

            // Check whether the element being rendered is an <H4>.
            // element. If so, and the requesting device supports italic
            // formatting, render the closing tag of the <i> element.
            // If not, render the closing tag of the <font> element.
            if (TagKey == HtmlTextWriterTag.H4)
            {
                if (SupportsItalic)
                    return "</i>";
                else
                    return "</font>";
            }
            // Call the base method
            return base.RenderAfterContent();
        }

        // Override the RenderBeforeTag method to render the
        // opening tag of a <small> element to modify the text size of 
        // any <a> elements that this writer encounters.
        protected override string RenderBeforeTag()
        {
            // Check whether the element being rendered is an 
            // <a> element. If so, render the opening tag
            // of the <small> element; otherwise, call the base method.
            if (TagKey == HtmlTextWriterTag.A)
                return "<small>";
            return base.RenderBeforeTag();
        }

        // Override the RenderAfterTag method to render
        // close any elements opened in the RenderBeforeTag
        // method call.
        protected override string RenderAfterTag()
        {
            // Check whether the element being rendered is an
            // <a> element. If so, render the closing tag of the
            // <small> element; otherwise, call the base method.
            if (TagKey == HtmlTextWriterTag.A)
                return "</small>";
            return base.RenderAfterTag();
        }
    }
}

.NET Framework のセキュリティ

  • AspNetHostingPermission  (ホスト環境での動作に必要なアクセス許可)要求値 : LinkDemand; アクセス許可値 : Minimal
  • AspNetHostingPermission  (ホスト環境での動作に必要なアクセス許可)要求値 : InheritanceDemand; アクセス許可値 : Minimal

継承階層

System.Object
   System.MarshalByRefObject
     System.IO.TextWriter
       System.Web.UI.HtmlTextWriter
        System.Web.UI.Html32TextWriter
           System.Web.UI.ChtmlTextWriter

スレッド セーフ

この型の public static (Visual Basicでは共有) メンバはすべて,スレッド セーフです。インスタンス メンバの場合は,スレッド セーフであるとは限りません。

プラットフォーム

Windows 98,Windows Server 2000 SP4,Windows CE,Windows Millennium Edition,Windows Mobile for Pocket PC,Windows Mobile for Smartphone,Windows Server 2003,Windows XP Media Center Edition,Windows XP Professional x64 Edition,Windows XP SP2,Windows XP Starter Edition

Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。

バージョン情報

.NET Framework

サポート対象 : 3.0,2.0,1.1,1.0

参照

関連項目

Html32TextWriter メンバ
System.Web.UI 名前空間
HtmlTextWriter

その他の技術情報

チュートリアル : カスタム サーバー コントロールの開発と使用