HtmlTextWriter-Klasse
Schreibt Markupzeichen und Text in den Ausgabestream eines ASP.NET-Serversteuerelements. Diese Klasse stellt Formatierungsfunktionen bereit, die von ASP.NET-Serversteuerelementen beim Rendern von Markup auf Clients verwendet werden.
Namespace: System.Web.UI
Assembly: System.Web (in system.web.dll)
Syntax
'Declaration
Public Class HtmlTextWriter
Inherits TextWriter
'Usage
Dim instance As HtmlTextWriter
public class HtmlTextWriter : TextWriter
public ref class HtmlTextWriter : public TextWriter
public class HtmlTextWriter extends TextWriter
public class HtmlTextWriter extends TextWriter
Hinweise
Die HtmlTextWriter-Klasse wird zum Rendern von HTML 4.0 in Desktopbrowsern verwendet. HtmlTextWriter ist auch die Basisklasse aller Markupwriter im System.Web.UI-Namespace, einschließlich der ChtmlTextWriter-Klasse, der Html32TextWriter-Klasse und der XhtmlTextWriter-Klasse. Diese Klassen werden zum Schreiben von Elementen, Attributen und Format- und Layoutinformationen für unterschiedliche Arten von Markups verwendet. Außerdem werden diese Klassen von den Seiten- und Steuerelementadapterklassen verwendet, die den einzelnen Markupsprachen zugeordnet sind.
In den meisten Fällen verwendet ASP.NET automatisch den entsprechenden Writer für das anfordernde Gerät. Wenn Sie aber einen benutzerdefinierten Textwriter erstellen oder einen bestimmten Writer für das Rendern einer Seite auf einem speziellen Gerät angeben möchten, müssen Sie der Seite den Writer im controlAdapters-Abschnitt der BROWSER-Datei der Anwendung zuordnen.
Beispiel
Im folgenden Codebeispiel wird das Überschreiben der Render-Methode eines benutzerdefinierten Steuerelements, das von der Control-Klasse abgeleitet ist, veranschaulicht. Im Codebeispiel wird die Verwendung verschiedener Methoden, Eigenschaften und Felder von HtmlTextWriter veranschaulicht.
' 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 'Render
// 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();
}
Vererbungshierarchie
System.Object
System.MarshalByRefObject
System.IO.TextWriter
System.Web.UI.HtmlTextWriter
System.Web.UI.Html32TextWriter
System.Web.UI.MobileControls.Adapters.MultiPartWriter
System.Web.UI.XhtmlTextWriter
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
HtmlTextWriter-Member
System.Web.UI-Namespace
TextWriter
Control-Klasse
Page
ControlAdapter
PageAdapter
ChtmlTextWriter-Klasse
Html32TextWriter-Klasse
XhtmlTextWriter
Control.Render