DataList-Klasse
Ein datengebundenes Listensteuerelement, das Elemente mithilfe von Vorlagen anzeigt.
Namespace: System.Web.UI.WebControls
Assembly: System.Web (in system.web.dll)
Syntax
'Declaration
<ControlValuePropertyAttribute("SelectedValue")> _
Public Class DataList
Inherits BaseDataList
Implements INamingContainer, IRepeatInfoUser
'Usage
Dim instance As DataList
[ControlValuePropertyAttribute("SelectedValue")]
public class DataList : BaseDataList, INamingContainer, IRepeatInfoUser
[ControlValuePropertyAttribute(L"SelectedValue")]
public ref class DataList : public BaseDataList, INamingContainer, IRepeatInfoUser
/** @attribute ControlValuePropertyAttribute("SelectedValue") */
public class DataList extends BaseDataList implements INamingContainer, IRepeatInfoUser
ControlValuePropertyAttribute("SelectedValue")
public class DataList extends BaseDataList implements INamingContainer, IRepeatInfoUser
Hinweise
Mit dem DataList-Steuerelement können Sie eine mithilfe von Vorlagen definierte, datengebundene Liste anzeigen. Das DataList-Steuerelement unterstützt das Auswählen und Bearbeiten.
Der Inhalt des DataList-Steuerelements kann mithilfe von Vorlagen geändert werden. In der folgenden Tabelle sind die unterstützten Vorlagen aufgelistet.
Vorlagenname |
Beschreibung |
---|---|
Stellt (sofern definiert) den Inhalt und das Layout für abwechselnde Elemente in DataList bereit. Wenn nicht definiert, wird ItemTemplate verwendet. |
|
Stellt (sofern definiert) den Inhalt und das Layout für das gegenwärtig bearbeitete Element in DataList bereit. Wenn nicht definiert, wird ItemTemplate verwendet. |
|
Stellt (sofern definiert) den Inhalt und das Layout für den Fußzeilenbereich in DataList bereit. Wenn diese Vorlage nicht definiert ist, wird kein Fußzeilenbereich angezeigt. |
|
Stellt (sofern definiert) den Inhalt und das Layout für den Kopfzeilenbereich in DataList bereit. Wenn diese Vorlage nicht definiert ist, wird kein Kopfzeilenbereich angezeigt. |
|
Diese Vorlage muss definiert sein. Sie stellt den Inhalt und das Layout für Elemente in DataList bereit. |
|
Stellt (sofern definiert) den Inhalt und das Layout für das gegenwärtig ausgewählte Element in DataList bereit. Wenn nicht definiert, wird ItemTemplate verwendet. |
|
Stellt (sofern definiert) den Inhalt und das Layout für das Trennzeichen zwischen Elementen in DataList bereit. Wenn diese Vorlage nicht definiert ist, wird kein Trennzeichen angezeigt. |
Damit die Elemente im DataList-Steuerelement angezeigt werden können, muss zumindest ItemTemplate definiert sein. Mit zusätzlichen Vorlagen kann ein benutzerdefiniertes Erscheinungsbild für das DataList-Steuerelement bereitgestellt werden.
Die Darstellung des DataList-Steuerelements kann durch Festlegen der Stileigenschaften für die unterschiedlichen Teile des Steuerelements angepasst werden. In der folgenden Tabelle sind die verschiedenen Stileigenschaften aufgelistet.
Stileigenschaft |
Beschreibung |
---|---|
Gibt den Stil für abwechselnde Elemente im DataList-Steuerelement an. |
|
Gibt den Stil für das im DataList-Steuerelement bearbeitete Element an. |
|
Gibt den Stil für die Fußzeile im DataList-Steuerelement an. |
|
Gibt den Stil für die Kopfzeile im DataList-Steuerelement an. |
|
Gibt den Stil für die Elemente im DataList-Steuerelement an. |
|
Gibt den Stil für das im DataList-Steuerelement ausgewählte Element an. |
|
Gibt den Stil für das Trennzeichen zwischen den Elementen im DataList-Steuerelement an. |
Sie können auch verschiedene Bereiche des Steuerelements anzeigen und ausblenden. In der folgenden Tabelle sind die Eigenschaften aufgeführt, mit denen gesteuert wird, welche Bereiche angezeigt oder ausgeblendet werden.
Eigenschaft |
Beschreibung |
---|---|
Zeigt den Fußzeilenbereich des DataList-Steuerelements an oder blendet diesen aus. |
|
Zeigt den Kopfzeilenbereich des DataList-Steuerelements an oder blendet diesen aus. |
Die Anzeigerichtung eines DataList-Steuerelements kann vertikal bzw. horizontal sein. Legen Sie zum Angeben der Anzeigerichtung die RepeatDirection-Eigenschaft fest.
Das Layout des DataList-Steuerelements wird durch die RepeatLayout-Eigenschaft gesteuert. Wenn diese Eigenschaft auf RepeatLayout.Table festgelegt wird, erfolgt die Anzeige von DataList im Tabellenformat, beim Festlegen auf RepeatLayout.Flow wird DataList dagegen ohne Tabellenstruktur angezeigt.
Warnung
Dieses Steuerelement kann zum Anzeigen von Benutzereingaben verwendet werden, die u. U. bösartige Clientskripts enthalten können. Überprüfen Sie alle von einem Client gesendeten Informationen auf ausführbare Skripts, SQL-Anweisungen oder anderen 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.
Beispiel
Im folgenden Beispiel wird das Anzeigen einer Liste von Elementen aus einer Datenquelle mit einem DataList-Steuerelement veranschaulicht.
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" %>
<%@ Import Namespace="System.Data" %>
<html>
<script runat="server">
Function CreateDataSource() As ICollection
' Create sample data for the DataList control.
Dim dt As DataTable = New DataTable()
dim dr As DataRow
' Define the columns of the table.
dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
dt.Columns.Add(New DataColumn("StringValue", GetType(String)))
dt.Columns.Add(New DataColumn("CurrencyValue", GetType(Double)))
dt.Columns.Add(New DataColumn("ImageValue", GetType(String)))
' Populate the table with sample values.
Dim i As Integer
For i = 0 To 8
dr = dt.NewRow()
dr(0) = i
dr(1) = "Description for item " & i.ToString()
dr(2) = 1.23 * (i + 1)
dr(3) = "Image" & i.ToString() & ".jpg"
dt.Rows.Add(dr)
Next i
Dim dv As DataView = New DataView(dt)
Return dv
End Function
Sub Page_Load(sender As Object, e As EventArgs)
' Load sample data only once, when the page is first loaded.
If Not IsPostBack Then
ItemsList.DataSource = CreateDataSource()
ItemsList.DataBind()
End If
End Sub
</script>
<body>
<form runat=server>
<h3>DataList Example</h3>
<asp:DataList id="ItemsList"
BorderColor="black"
CellPadding="5"
CellSpacing="5"
RepeatDirection="Vertical"
RepeatLayout="Table"
RepeatColumns="3"
ShowBorder="True"
runat="server">
<HeaderStyle BackColor="#aaaadd">
</HeaderStyle>
<AlternatingItemStyle BackColor="Gainsboro">
</AlternatingItemStyle>
<HeaderTemplate>
List of items
</HeaderTemplate>
<ItemTemplate>
Description: <br>
<%# DataBinder.Eval(Container.DataItem, "StringValue") %>
<br>
Price: <%# DataBinder.Eval(Container.DataItem, "CurrencyValue", "{0:c}") %>
<br>
<asp:Image id="ProductImage"
ImageUrl='<%# DataBinder.Eval(Container.DataItem, "ImageValue") %>'
runat="server"/>
</ItemTemplate>
</asp:DataList>
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<html>
<script runat="server">
ICollection CreateDataSource()
{
// Create sample data for the DataList control.
DataTable dt = new DataTable();
DataRow dr;
// Define the columns of the table.
dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
dt.Columns.Add(new DataColumn("StringValue", typeof(String)));
dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
dt.Columns.Add(new DataColumn("ImageValue", typeof(String)));
// Populate the table with sample values.
for (int i = 0; i < 9; i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Description for item " + i.ToString();
dr[2] = 1.23 * (i + 1);
dr[3] = "Image" + i.ToString() + ".jpg";
dt.Rows.Add(dr);
}
DataView dv = new DataView(dt);
return dv;
}
void Page_Load(Object sender, EventArgs e)
{
// Load sample data only once, when the page is first loaded.
if (!IsPostBack)
{
ItemsList.DataSource = CreateDataSource();
ItemsList.DataBind();
}
}
</script>
<body>
<form runat=server>
<h3>DataList Example</h3>
<asp:DataList id="ItemsList"
BorderColor="black"
CellPadding="5"
CellSpacing="5"
RepeatDirection="Vertical"
RepeatLayout="Table"
RepeatColumns="3"
ShowBorder="True"
runat="server">
<HeaderStyle BackColor="#aaaadd">
</HeaderStyle>
<AlternatingItemStyle BackColor="Gainsboro">
</AlternatingItemStyle>
<HeaderTemplate>
List of items
</HeaderTemplate>
<ItemTemplate>
Description: <br>
<%# DataBinder.Eval(Container.DataItem, "StringValue") %>
<br>
Price: <%# DataBinder.Eval(Container.DataItem, "CurrencyValue", "{0:c}") %>
<br>
<asp:Image id="ProductImage"
ImageUrl='<%# DataBinder.Eval(Container.DataItem, "ImageValue") %>'
runat="server"/>
</ItemTemplate>
</asp:DataList>
</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.BaseDataList
System.Web.UI.WebControls.DataList
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
DataList-Member
System.Web.UI.WebControls-Namespace
BaseDataList-Klasse
DataGrid-Klasse
Repeater
Weitere Ressourcen
DataList-Webserver-Steuerelement
Sichern von Standardsteuerelementen
Gewusst wie: Schutz gegen Skriptangriffe in einer Webanwendung durch Anwenden von HTML-Codierung auf Zeichenfolgen
Überprüfen der Benutzereingabe in ASP.NET-Webseiten
Codemodell für ASP.NET-Webseiten