Übersicht über das DataList-Webserversteuerelement

Aktualisiert: November 2007

Das DataList-Webserver-Steuerelement zeigt Zeilen von Datenbankinformationen in einem benutzerdefinierbaren Format an. Das Format zum Anzeigen der Daten ist in Vorlagen definiert, die Sie erstellen können. Sie können Vorlagen für Elemente, abwechselnde Elemente, ausgewählte Elemente und Bearbeitungselemente erstellen. Zum Anpassen des allgemeinen Erscheinungsbildes der DataList stehen außerdem Vorlagen für Header, Footer und Trennzeichen zur Verfügung. Durch das Einfügen von Button-Webserver-Steuerelementen in die Vorlagen können Sie die Listenelemente mit Code verbinden, der es den Benutzern ermöglicht, zwischen Ansichts-, Auswahl- und Bearbeitungsmodi zu wechseln.

Dieses Thema enthält folgende Abschnitte:

  • Hintergrund

  • Codebeispiele

  • Klassenreferenz

Hintergrund

Das DataList-Webserversteuerelement zeigt Daten in einem Format an, das vom Benutzer mithilfe von Vorlagen und Formaten definiert werden kann. Das DataList-Steuerelement ist für Daten in einer sich wiederholenden Struktur nützlich, z. B. einer Tabelle. Das DataList-Steuerelement kann Zeilen in verschiedenen Layouts anzeigen, z. B. geordnet in Spalten oder Zeilen.

Hinweis:

Das DataList-Steuerelement stellt Elemente in einer Liste mithilfe von HTML-Tabellenelementen dar. Um genaue Kontrolle über den HTML-Code zu haben, der für die Darstellung einer Liste verwendet wird, setzen Sie anstelle des DataList-Webserversteuerelement das Repeater-Steuerelement ein.

Optional können Sie das DataList-Steuerelement so konfigurieren, dass Benutzer Informationen bearbeiten oder löschen können. Das Steuerelement kann auch für die Unterstützung zusätzlicher Funktionen, z. B. des Auswählens von Zeilen, angepasst werden.

Zum Definieren des Layouts von Datenelementen verwenden Sie Vorlagen, indem Sie HTML-Text und Steuerelemente hinzufügen. Sie können beispielsweise in einem Element ein Label-Webserversteuerelement verwenden, um ein Feld aus der Datenquelle anzuzeigen.

Die folgenden Abschnitte erläutern die Funktionen des DataList-Steuerelements.

Binden von Daten an das Steuerelement

Das DataList-Webserversteuerelement muss an eine Datenquelle gebunden sein. Die gängigste Datenquelle ist ein Datenquellensteuerelement, z. B. ein SqlDataSource-Steuerelement oder ein ObjectDataSource-Steuerelement. Sie können ein DataList-Steuerelement auch an eine Klasse binden, die die IEnumerable-Schnittstelle implementiert. Dazu zählen ADO.NET-Datasets (die DataSet-Klasse), Datenreader (die SqlDataReader-Klasse oder die OleDbDataReader-Klasse) sowie die meisten Auflistungen. Beim Binden von Daten geben Sie eine Datenquelle für das gesamte DataList-Steuerelement an. Wenn Sie diesem Steuerelement weitere Steuerelemente hinzufügen – beispielsweise Bezeichnungen oder Textfelder in Listenelementen – können Sie die Eigenschaften der untergeordneten Steuerelemente an Felder im aktuellen Datenelement binden.

Definieren von Vorlagen für DataList-Elemente

Im DataList-Steuerelement definieren Sie das Layout der Daten mithilfe von Vorlagen.

Hinweis:

Eine Übersicht über das Verwenden von Vorlagen finden Sie unter Vorlagen für ASP.NET-Webserver-Steuerelemente.

Die folgende Tabelle beschreibt die Vorlagen, die vom DataList-Steuerelement unterstützt werden.

Vorlageneigenschaft

Beschreibung

ItemTemplate

Enthält die HTML-Elemente und -Steuerelemente, die einmal für jede Zeile in der Datenquelle dargestellt werden.

AlternatingItemTemplate

Enthält die HTML-Elemente und -Steuerelemente, die einmal für jede zweite Zeile in der Datenquelle dargestellt werden. Diese Vorlage wird i. d. R. verwendet, um jeder zweiten Zeile ein besonderes Aussehen zu geben, z. B. eine andere Hintergrundfarbe als die in der ItemTemplate-Eigenschaft angegebene Farbe.

SelectedItemTemplate

Enthält die Elemente, die dargestellt werden sollen, wenn der Benutzer ein Element im DataList-Steuerelement auswählt. Diese Vorlage wird gewöhnlicherweise dazu verwendet, die ausgewählte Zeile durch eine andere Hintergrund- oder Schriftfarbe visuell zu unterscheiden. Sie können das Element auch erweitern, indem Sie zusätzliche Felder aus der Datenquelle anzeigen.

EditItemTemplate

Gibt das Layout für Elemente an, die sich im Bearbeitungsmodus befinden. In dieser Vorlage sind vor allem Bearbeitungssteuerelemente enthalten, z. B. TextBox-Steuerelemente.

HeaderTemplate und FooterTemplate

Enthält den Text und die Steuerelemente, die am Anfang und am Ende der Liste dargestellt werden.

SeparatorTemplate

Enthält die Elemente, die zwischen den einzelnen Elementen dargestellt werden sollen. Ein typisches Beispiel ist eine Linie (unter Verwendung eines HR-Elements).

Formate

Sie können zum Festlegen der Darstellung eines Elements in einer Vorlage das Format der Vorlage angeben. Folgendes kann beispielsweise angegeben werden:

  • Elemente werden mit schwarzem Text auf weißem Hintergrund dargestellt.

  • Jedes zweite Element wird mit schwarzem Text auf hellgrauem Hintergrund dargestellt.

  • Das ausgewählte Element wird mit fett formatiertem, schwarzen Text auf gelbem Hintergrund dargestellt.

  • Elemente, die bearbeitet werden, werden mit schwarzem Text auf hellblauem Hintergrund dargestellt.

Jede Vorlage unterstützt ihr eigenes Formatobjekt, dessen Eigenschaften sowohl während der Entwurfszeit als auch während der Laufzeit festgelegt werden können. Sie können mit folgenden Formaten arbeiten:

Weitere Informationen finden Sie unter: ASP.NET-Webserversteuerelemente und CSS-Formatvorlagen.

Elementlayout

Das DataList-Steuerelement verwendet eine HTML-Tabelle, um die Darstellung der Elemente anzuordnen, auf die die Vorlage angewendet wird. Sie können Reihenfolge, Richtung und Anzahl der Spalten für die einzelnen Tabellenzellen bestimmen, mit denen DataList-Elemente dargestellt werden. Die folgende Tabelle beschreibt die Layoutoptionen, die vom DataList-Steuerelement unterstützt werden.

Layoutoption

Beschreibung

Flusslayout

Im Flusslayout werden Listenelemente in Folge dargestellt, ähnlich wie in einem Textverarbeitungsdokument.

Tabellenlayout

Im Tabellenlayout werden die Elemente in einer HTML-Tabelle dargestellt. Sie erhalten auf diese Weise zusätzliche Optionen für das Festlegen des Aussehens von Elementen, da Sie Eigenschaften von Tabellenzellen (z. B. Rasterlinien) definieren können. Ausführliche Informationen finden Sie unter Gewusst wie: Angeben von Fluss- oder Tabellenformat in DataList-Webserversteuerelementen.

Vertikales und horizontales Layout

Standardmäßig werden Elemente in einem DataList-Steuerelement in einer einzelnen vertikalen Spalte dargestellt. Sie können jedoch festlegen, dass das Steuerelement mehrere Spalten enthält. In diesem Fall können Sie weiterhin festlegen, ob die Elemente vertikal (wie in Zeitungsspalten) oder horizontal (wie Tage in einem Kalender) angezeigt werden sollen. Ausführliche Informationen finden Sie unter Gewusst wie: Angeben des horizontalen oder vertikalen Layouts in DataList-Webserversteuerelementen.

Spaltenanzahl

Unabhängig davon, ob Elemente in einem DataList-Steuerelement vertikal oder horizontal angeordnet werden, können Sie festlegen, wie viele Spalten die Liste haben soll. Dadurch können Sie die dargestellte Breite der Webseite steuern und ggf. horizontale Bildläufe vermeiden.

Ereignisse

Das DataList-Steuerelement unterstützt mehrere Ereignisse. Mit dem ItemCreated-Ereignis können Sie den Elementerstellungsprozess zur Laufzeit anpassen. Das ItemDataBound-Element ermöglicht ebenfalls die Anpassung des DataList-Steuerelements, jedoch nachdem die Daten für die Überprüfung zur Verfügung stehen. Wenn Sie beispielsweise das DataList-Steuerelement zum Anzeigen einer Aufgabenliste verwenden, können Sie überfällige Elemente in rotem, abgeschlossene in schwarzem und andere Aufgaben in grünem Text darstellen. Jedes Ereignis kann dazu verwendet werden, Formatierungen der Vorlagendefinition zu überschreiben.

Die verbleibenden Ereignisse werden durch das Klicken auf Schaltflächen in Listenelementen aufgerufen. Sie wurden dazu entwickelt, Sie bei der Handhabung der am häufigsten verwendeten Funktionen des DataList-Steuerelements zu unterstützen. Die folgenden vier Formate dieses Typs werden unterstützt:

Um das Auslösen dieser Ereignisse zu ermöglichen, fügen Sie das Button-Steuerelement, das LinkButton-Steuerelement oder das ImageButton-Steuerelement zu den Vorlagen im DataList-Steuerelement hinzu, und legen Sie die CommandName-Eigenschaft der Schaltlflächen auf ein Schlüsselwort wie edit, delete, update oder cancel fest. Wenn ein Benutzer in einem Element auf eine Schaltfläche klickt, wird das Ereignis an den Container (das DataList-Steuerelement) gesendet. Welches Ereignis genau von der Schaltfläche ausgelöst wird, hängt vom Wert der CommandName-Eigenschaft der angeklickten Schaltfläche ab. Wenn die CommandName-Eigenschaft einer Schaltfläche beispielsweise auf edit festgelegt ist, löst die Schaltfläche beim Anklicken ein EditCommand-Ereignis aus. Wenn die CommandName-Eigenschaft auf delete festgelegt ist, löst die Schaltfläche ein DeleteCommand-Ereignis aus usw.

Das DataList-Steuerelement unterstützt auch das ItemCommand-Ereignis, das ausgelöst wird, wenn ein Benutzer auf eine Schaltfläche klickt, die über keinen vordefinierten Befehl (z. B. edit oder delete) verfügt. Sie können dieses Ereignis für benutzerdefinierte Funktionen verwenden, indem Sie für die CommandName-Eigenschaft der Schaltfläche den gewünschten Wert festlegen und ihn anschließend im ItemCommand-Ereignishandler testen. Sie können dieses Verfahren beispielsweise beim Auswählen eines Elements verwenden, wie in Gewusst wie: Ermöglichen des Auswählens von Elementen in DataList-Webserversteuerelementen beschrieben.

Weitere Informationen über Web Forms-Ereignisse finden Sie unter Ereignismodell für ASP.NET-Webserversteuerelemente.

Bearbeiten und Auswählen von Elementen

Sie können zulassen, dass Benutzer einzelne Elemente im Steuerelement bearbeiten. Andere Datensteuerelemente wie GridView, DetailsView und FormView können mit Datenquellensteuerelementen interagieren, um automatische Aktualisierungen und automatisches Paging zu unterstützen. Das DataList-Steuerelement hingegen kann die Aktualisierungsfunktionen von Datenquellensteuerelementen oder das automatische Paging und Sortieren nicht automatisch nutzen. Um Aktualisierungen, Paging und Sortieren mit dem DataList-Steuerelement durchzuführen, müssen Sie diese Aufgaben in Code durchführen, den Sie schreiben.

Das allgemeine Verfahren sieht so aus, dass eine EditItemTemplate-Vorlage erstellt wird, die das entsprechende Layout und die entsprechenden Steuerelemente für die Bearbeitung zur Verfügung stellt. Außerdem müssen Sie eine Option hinzufügen, die es Benutzern ermöglicht, deutlich zu machen, dass sie das Element bearbeiten möchten. Die gängigste Methode hierfür ist, eine Schaltfläche in die Elementvorlage aufzunehmen (und – falls vorhanden – auch in die AlternatingItemTemplate-Eigenschaft) und die CommandName-Eigenschaft dieser Schaltfläche anschließend auf edit festzulegen. Beim Klicken auf die Schaltfläche löst das DataList-Steuerelement automatisch das EditCommand-Ereignis aus. Legen Sie das Element in Ihrem Code für den Ereignishandler auf den Bearbeitungsmodus fest, der die Vorlage EditItemTemplate anzeigt.

Die EditItemTemplate-Vorlage enthält meistens Schaltflächen, mit denen die Benutzer ihre Änderungen speichern oder verwerfen können (z. B. die Schaltflächen Aktualisieren und Abbrechen). Diese Schaltflächen funktionieren ähnlich wie die Schaltfläche Bearbeiten – sie senden eine vordefinierte Befehlsnachricht (update oder cancel) an das DataList-Steuerelement, das ein UpdateCommand-Ereignis oder ein CancelCommand-Ereignis auslöst, auf das Sie entsprechend reagieren können. Weitere Informationen finden Sie unter: Gewusst wie: Ermöglichen des Bearbeitens von Elementen in DataList-Webserversteuerelementen.

Der Prozess zur Auswahl eines Elements ist ähnlich und erfolgt unter Verwendung des SelectedIndexChanged-Ereignisses. Sie fügen der ItemTemplate-Vorlage eine Schaltfläche hinzu und legen deren CommandName-Eigenschaft auf select fest. Schreiben Sie anschließend einen Ereignishandler für das SelectedIndexChanged-Ereignis. Das SelectedIndexChanged-Ereignis wird ausgelöst, sobald der Benutzer auf die Schaltfläche Auswählen klickt. Ausführliche Informationen finden Sie unter Gewusst wie: Ermöglichen des Auswählens von Elementen in DataList-Webserversteuerelementen. Weitere Informationen finden Sie unter Gewusst wie: Ermöglichen des Auswählens von Elementen in DataList-Webserversteuerelementen.

Zurück nach oben

Codebeispiele

Gewusst wie: Angeben von Fluss- oder Tabellenformat in DataList-Webserversteuerelementen

Gewusst wie: Angeben des horizontalen oder vertikalen Layouts in DataList-Webserversteuerelementen

Gewusst wie: Ermöglichen des Auswählens von Elementen in DataList-Webserversteuerelementen

Gewusst wie: Ermöglichen des Bearbeitens von Elementen in DataList-Webserversteuerelementen

Gewusst wie: Ermöglichen des Löschens von Elementen in DataList-Webserversteuerelementen

Gewusst wie: Reagieren auf Schaltflächenereignisse in DataList- oder Repeater-Elementen

Gewusst wie: Anpassen von DataList-Elementen zur Laufzeit

Gewusst wie: Dynamisches Anpassen von Elementen im DataList-Webserversteuerelement

Gewusst wie: Dynamisches Erstellen von Vorlagen in DataList-Webserversteuerelementen

Gewusst wie: Hinzufügen von DataList-Webserversteuerelementen zu einer ASP.NET-Webseite

Exemplarische Vorgehensweise: Anzeigen und Formatieren von Daten mit dem DataList-Webserversteuerelement

Zurück nach oben

Klassenreferenz

In der folgenden Tabelle werden die Hauptklassen aufgelistet, die sich auf das DataList-Steuerelement beziehen.

Member

Beschreibung

DataList

Die Hauptklasse des Steuerelements.

Zurück nach oben

Siehe auch

Konzepte

Überblick über den ASP.NET-Datenzugriff

Vorlagen für ASP.NET-Webserver-Steuerelemente

Weitere Ressourcen

Toolbox-Datensteuerelemente