Html32TextWriter Class Home
This page is specific to:.NET Framework Version:1.12.03.03.54.0
.NET Framework Class Library
Html32TextWriter Class

Writes a series of HTML 3.2–specific characters and text to the output stream for an ASP.NET server control. The Html32TextWriter class provides formatting capabilities that ASP.NET server controls use when rendering HTML 3.2 content to clients.

Namespace:  System.Web.UI
Assembly:  System.Web (in System.Web.dll)
Syntax

'Usage

Dim instance As Html32TextWriter

'Declaration

<AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level := AspNetHostingPermissionLevel.Minimal)> _
<AspNetHostingPermissionAttribute(SecurityAction.InheritanceDemand, Level := AspNetHostingPermissionLevel.Minimal)> _
Public Class Html32TextWriter _
    Inherits HtmlTextWriter
Remarks

The Html32TextWriter class is an alternative to the HtmlTextWriter class. It converts HTML 4.0 style attributes into the equivalent HTML 3.2 tags and attributes. It standardizes the propagation of attributes, such as colors and fonts, using HTML tables. ASP.NET automatically uses this class for HTML 3.2 and earlier browsers by checking the TagWriter property of the HttpBrowserCapabilities class. Unless you create a custom page or control adapter that targets devices that use HTML 3.2 markup, you do not need to create an instance of the Html32TextWriter class explicitly.

For more information about customizing page and control rendering, see Walkthrough: Developing and Using a Custom Server Control.

Examples

The following code example demonstrates how to use a class, named CustomHtml32TextWriter, that derives from the Html32TextWriter class. CustomHtml32TextWriter creates two constructors that follow the pattern that is established by the HtmlTextWriter class and overrides the RenderBeforeContent, RenderAfterContent, RenderBeforeTag, and RenderAfterTag methods.

' 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


.NET Framework Security

Inheritance Hierarchy

System..::.Object
  System..::.MarshalByRefObject
    System.IO..::.TextWriter
      System.Web.UI..::.HtmlTextWriter
        System.Web.UI..::.Html32TextWriter
          System.Web.UI..::.ChtmlTextWriter
Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Platforms

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0
See Also

Reference

Other Resources

© 2009 Microsoft Corporation. All rights reserved.   Terms of Use | Trademarks | Privacy Statement
Page view tracker
Rate the Lightweight library
x
Lightweight builds on ScriptFree (loband) by adding features you've requested: a SearchBox and default code language selection.
Do you like the SearchBox?
Do you like the tabbed code blocks?
How useful is this topic?
Tell us more.
Thanks
x
You're helping to improve MSDN Online.
Feedback
Switch View
Classic
Lightweight Beta
ScriptFree
Switch View