Table-Klasse
Zeigt eine Tabelle auf einer Webseite an.
Namespace: System.Web.UI.WebControls
Assembly: System.Web (in system.web.dll)
Syntax
'Declaration
Public Class Table
Inherits WebControl
Implements IPostBackEventHandler
'Usage
Dim instance As Table
public class Table : WebControl, IPostBackEventHandler
public ref class Table : public WebControl, IPostBackEventHandler
public class Table extends WebControl implements IPostBackEventHandler
public class Table extends WebControl implements IPostBackEventHandler
Hinweise
Das Table-Steuerelement ermöglicht es, eine HTML-Tabelle zu erstellen und ihre Eigenschaften direkt anzugeben. Bei statischem Inhalt kann eine Tabelle zur Entwurfszeit erstellt werden. Die Leistungsfähigkeit eines Table-Webserversteuerelements wird hingegen erst dann richtig genutzt, wenn die Tabelle mit dynamischem Inhalt programmgesteuert erstellt wird.
Sie sollten berücksichtigen, dass jedes programmgesteuerte Hinzufügen oder Ändern von Tabellenzellen oder -zeilen bei einer Bereitstellung an den Server verloren geht. Dies liegt daran, dass Tabellenzeilen und Tabellenzellen keine Eigenschaften des Table-Steuerelements, sondern selbst Steuerelemente sind. Um Änderungen an der Tabelle beizubehalten, müssen Zeilen und Zellen nach jedem Postback rekonstruiert werden. Wenn umfangreiche Änderungen erwartet werden, kann es nützlich sein, eines der Steuerelemente DataList, DataGrid oder GridView anstelle des Table-Steuerelements zu verwenden. Aus diesem Grund wird die Table-Klasse hauptsächlich von Steuerelemententwicklern verwendet.
Warnung
Dieses Steuerelement kann zum Anzeigen von Benutzereingaben verwendet werden, die möglicherweise böswillige Clientskripts enthalten. Überprüfen Sie alle Informationen, die von einem Client gesendet werden, nach ausführbaren Skripts, SQL-Anweisungen oder anderem Code, bevor Sie sie in der Anwendung anzeigen. Mithilfe von Validierungssteuerelementen können Sie Benutzereingaben überprüfen, bevor Sie den Eingabetext in einem Steuerelement anzeigen. ASP.NET stellt ein Feature zur Anforderungsvalidierung von Eingaben bereit, um Skripts und HTML in Benutzereingaben zu blockieren. Weitere Informationen finden Sie unter Sichern von Standardsteuerelementen, Gewusst wie: Schutz gegen Skriptangriffe in einer Webanwendung durch Anwenden von HTML-Codierung auf Zeichenfolgen und Überprüfen der Benutzereingabe in ASP.NET-Webseiten.
Eingabehilfen
Das für dieses Steuerelement standardmäßig wiedergegebene Markup entspricht eventuell nicht den Standards für die Eingabehilfen wie beispielsweise den Richtlinien der Web Content Accessibility Guidelines 1.0 (WCAG) mit der Priorität 1. Details über die Unterstützung von Eingabehilfen für dieses Steuerelement finden Sie unter Steuerelemente und Eingabehilfen von ASP.NET.
Beispiel
Im folgenden Codebeispiel wird veranschaulicht, wie eine Tabelle zur Entwurfszeit erstellt wird. Die Tabelle enthält zwei Zeilen mit jeweils zwei Zellen.
Hinweis
Im folgenden Codebeispiel wird das Einzeldatei-Codemodell verwendet. Das Beispiel funktioniert möglicherweise nicht, wenn es direkt in eine CodeBehind-Datei kopiert wird. Dieses Codebeispiel muss in eine leere Textdatei mit einer ASPX-Erweiterung kopiert werden. Weitere Informationen zum Web Forms-Codemodell finden Sie unter Codemodell für ASP.NET-Webseiten.
<%@ Page Language="VB" AutoEventWireup="True" %>
<html><body>
<h3>Table example, constructed at design time</h3>
<form runat=server>
<asp:Table id="Table1" runat="server"
CellPadding=10
GridLines="Both"
HorizontalAlign="Center">
<asp:TableRow>
<asp:TableCell>
Row 0, Col 0
</asp:TableCell>
<asp:TableCell>
Row 0, Col 1
</asp:TableCell>
</asp:TableRow>
<asp:TableRow>
<asp:TableCell>
Row 1, Col 0
</asp:TableCell>
<asp:TableCell>
Row 1, Col 1
</asp:TableCell>
</asp:TableRow>
</asp:Table>
</form>
</body></html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<html><body>
<h3>Table example, constructed at design time</h3>
<form runat=server>
<asp:Table id="Table1" runat="server"
CellPadding=10
GridLines="Both"
HorizontalAlign="Center">
<asp:TableRow>
<asp:TableCell>
Row 0, Col 0
</asp:TableCell>
<asp:TableCell>
Row 0, Col 1
</asp:TableCell>
</asp:TableRow>
<asp:TableRow>
<asp:TableCell>
Row 1, Col 0
</asp:TableCell>
<asp:TableCell>
Row 1, Col 1
</asp:TableCell>
</asp:TableRow>
</asp:Table>
</form>
</body></html>
Im folgenden Beispiel wird veranschaulicht, wie eine Tabelle programmgesteuert erstellt wird. Das dynamische Erstellen einer Tabelle beinhaltet drei Schritte. Erstellen Sie zunächst TableCell-Objekte, die die Zellen in einer Zeile darstellen. Geben Sie den Inhalt der Zellen entweder durch Festlegen der Text-Eigenschaft ein oder indem Sie der Control.Controls-Auflistung der TableCell Steuerelemente hinzufügen. Erstellen Sie anschließend eine TableRow, die eine Zeile in der Tabelle darstellt. Fügen Sie nun der Cells-Auflistung der TableRow die zuvor erstellten TableCell-Objekte hinzu. Fügen Sie abschließend der Rows-Auflistung des Table-Steuerelements die TableRow hinzu. Wiederholen Sie diesen Prozess für jede Zeile in der Tabelle.
<%@ Page Language="VB" AutoEventWireup="True" %>
<html>
<head>
<script language="VB" runat="server">
Sub Page_Load(sender As Object, e As EventArgs)
' Generate rows and cells.
Dim numrows As Integer = 3
Dim numcells As Integer = 2
Dim j As Integer
For j = 0 To numrows - 1
Dim r As New TableRow()
Dim i As Integer
For i = 0 To numcells - 1
Dim c As New TableCell()
c.Controls.Add(New LiteralControl("row " & j.ToString() & ", cell " & i.ToString()))
r.Cells.Add(c)
Next i
Table1.Rows.Add(r)
Next j
End Sub 'Page_Load
</script>
</head>
<body>
<h3>Table Example, constructed programmatically</h3>
<form runat=server>
<asp:Table id="Table1"
GridLines="Both"
HorizontalAlign="Center"
Font-Name="Verdana"
Font-Size="8pt"
CellPadding=15
CellSpacing=0
Runat="server"/>
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<html>
<head>
<script language="C#" runat="server">
void Page_Load(Object sender, EventArgs e) {
// Generate rows and cells.
int numrows = 3;
int numcells = 2;
for (int j=0; j<numrows; j++) {
TableRow r = new TableRow();
for (int i=0; i<numcells; i++) {
TableCell c = new TableCell();
c.Controls.Add(new LiteralControl("row " + j.ToString() + ", cell " + i.ToString()));
r.Cells.Add(c);
}
Table1.Rows.Add(r);
}
}
</script>
</head>
<body>
<h3>Table Example, constructed programmatically</h3>
<form runat=server>
<asp:Table id="Table1"
GridLines="Both"
HorizontalAlign="Center"
Font-Name="Verdana"
Font-Size="8pt"
CellPadding=15
CellSpacing=0
Runat="server"/>
</form>
</body>
</html>
.NET Framework-Sicherheit
- AspNetHostingPermission für den Betrieb in einer Hostumgebung. Anforderungswert: LinkDemand, Berechtigungswert: Minimal.
- AspNetHostingPermission für den Betrieb in einer Hostumgebung. Anforderungswert: InheritanceDemand, Berechtigungswert: Minimal.
Vererbungshierarchie
System.Object
System.Web.UI.Control
System.Web.UI.WebControls.WebControl
System.Web.UI.WebControls.Table
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
Table-Member
System.Web.UI.WebControls-Namespace
TableCell
TableRow
TableHeaderRow
TableFooterRow
TableCellCollection
TableRowCollection
DataGrid-Klasse
DataList-Klasse
Weitere Ressourcen
Table-, TableRow- und TableCell-Webserver-Steuerelemente
Sichern von Standardsteuerelementen