Freigeben über


Html32TextWriter-Klasse

Schreibt eine Reihe von HTML 3.2-spezifischen Zeichen und Text in den Ausgabestream für ein ASP.NET-Serversteuerelement. Die Html32TextWriter-Klasse stellt Formatierungsfunktionen bereit, die von ASP.NET-Serversteuerelementen beim Wiedergeben von HTML 3.2-Inhalten auf Clients verwendet werden.

Namespace: System.Web.UI
Assembly: System.Web (in system.web.dll)

Syntax

'Declaration
Public Class Html32TextWriter
    Inherits HtmlTextWriter
'Usage
Dim instance As Html32TextWriter
public class Html32TextWriter : HtmlTextWriter
public ref class Html32TextWriter : public HtmlTextWriter
public class Html32TextWriter extends HtmlTextWriter
public class Html32TextWriter extends HtmlTextWriter

Hinweise

Die Html32TextWriter-Klasse ist eine Alternative zur HtmlTextWriter-Klasse. Sie konvertiert HTML 4.0-Formatvorlagenattribute in die entsprechenden Tags und Attribute für HTML 3.2. Sie standardisiert die Weitergabe der Attribute, z. B. Farben und Schriftarten, mithilfe von HTML-Tabellen. Für HTML 3.2 und ältere Browser verwendet ASP.NET automatisch diese Klasse. Dazu wird die TagWriter-Eigenschaft der HttpBrowserCapabilities-Klasse überprüft. Solange Sie keine benutzerdefinierte Seite oder einen benutzerdefinierten Steuerelementadapter erstellen, die bzw. der HTML 3.2-Markup verwendende Geräte anspricht, ist das explizite Erstellen einer Instanz der Html32TextWriter-Klasse nicht erforderlich.

Weitere Informationen zum Anpassen von Seiten und Steuerelementdarstellungen finden Sie unter Exemplarische Vorgehensweise: Entwickeln und Verwenden eines benutzerdefinierten Serversteuerelements.

Beispiel

Im folgenden Codebeispiel wird veranschaulicht, wie eine aus der Html32TextWriter-Klasse abgeleitete Klasse mit dem Namen CustomHtml32TextWriter verwendet wird. Mit CustomHtml32TextWriter werden zwei Konstruktoren generiert, die einem von der HtmlTextWriter-Klasse erstellten Muster folgen, und die Methoden RenderBeforeContent, RenderAfterContent, RenderBeforeTag und RenderAfterTag werden überschrieben.

' 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-Sicherheit

Vererbungshierarchie

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

Threadsicherheit

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Plattformen

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

Html32TextWriter-Member
System.Web.UI-Namespace
HtmlTextWriter

Weitere Ressourcen

Exemplarische Vorgehensweise: Entwickeln und Verwenden eines benutzerdefinierten Serversteuerelements