Freigeben über


DataGrid-Spalten

Beim Arbeiten mit einem DataGrid-Webserversteuerelement können Sie verschiedene Spaltentypen im Datenblatt erzeugen:

  • Gebundene Spalten
  • Schaltflächenspalten
  • Hyperlinkspalten
  • Vorlagenspalten

Darüber hinaus ist es möglich, das Datenblatt für das automatische Generieren von Spalten einzurichten, und zwar basierend auf den Informationen in der Datenquelle des Datenblattes.

Automatisch generierte Spalten

Wenn für die AutoGenerateColumn-Eigenschaft des DataGrid-Steuerelements true festgelegt ist, erzeugt das Steuerelement für jede bindbare Spalte in der Datenquelle eine gebundene Spalte und zeigt diese an. Zu den bindbaren Spaltentypen gehören primitive Typen sowie die Typen string, datetime und decimal. Wenn sich ein Feld in der Datenquelle befindet, das nicht zu den unterstützten Spaltentypen gehört, erzeugt das Steuerelement keine Spalte für dieses Feld. Solange die Datenquelle mindestens eine bindbare Spalte enthält, wird das DataGrid-Steuerelement an die Quelle gebunden. Die bindbaren Spalten werden erzeugt, und die nicht bindbaren werden ignoriert. Wenn AutoGenerateColumns auf true festgelegt ist und Sie explizite Spalten erzeugen, zeigt das Datenblatt sowohl die von Ihnen als auch die automatisch erzeugten Spalten an.

Die Verwendung von automatisch generierten Spalten ermöglicht das schnelle und einfache Anzeigen von Informationen in einem Datenblatt. Da diese Spalten automatisch zur Laufzeit erzeugt und in der Reihenfolge angezeigt werden, in der sie in der Datenquelle auftreten, können Sie diese Spalten nicht beliebig anordnen. Daher wird die Verwendung von automatisch generierten Spalten hauptsächlich für die Anzeige von einfachen Daten, für Seitenprototypen und für andere Situationen empfohlen, in denen eine sorgfältige Anordnung der Spalten nicht notwendig ist. Wenn Sie jedoch steuern möchten, welche Spalten in welcher Reihenfolge angezeigt werden, müssen Sie die Spalten explizit definieren.

Gebundene Spalten

Eine gebundene Spalte (BoundColumn-Element) zeigt die Informationen aus einer Spalte der Datenquelle an. In der Regel müssen Sie dem Datenblatt für jede anzuzeigende Datenspalte eine gebundene Spalte hinzufügen. Verwenden Sie gebundene Spalten, wenn Sie auswählen möchten, welche Spalten im Datenblatt angezeigt werden sollen. Mit gebundenen Spalten können Sie außerdem eine Reihe von Features festlegen, beispielsweise:

  • Text, Schriftart und Farbe für den Header und Footer der Spalte
  • Spaltenbreite
  • Datenformat
  • Schreibschutz für die Spalte (legt fest, ob ein bearbeitbares Steuerelement angezeigt wird, wenn sich die Zeile im Bearbeitungsmodus befindet)

Weitere Informationen zum Erstellen von gebundenen Spalten im Web Forms-Designer von Visual Studio finden Sie unter Hinzufügen gebundener Spalten zu einem DataGrid-Webserversteuerelement. Weitere Informationen zum Erstellen von gebundenen Spalten finden Sie unter DataGrid-Webserversteuerelement.

Schaltflächenspalten

Schaltflächenspalten ermöglichen das Hinzufügen von Datenblattspalten mit Schaltflächen, über die Benutzer zeilenspezifische Funktionen durchführen können, wie z. B. die aktuelle Zeile markieren, löschen oder in den Bearbeitungsmodus versetzen. Sie können Schaltflächen mit vordefinierten Funktionen erstellen, oder eigene Funktionen definieren (z. B. eine Schaltfläche mit der Bezeichnung "Zum Warenkorb hinzufügen").

Sie können zwei Arten von Schaltflächenspalten definieren:

  • Ein EditCommandColumn-Element enthält laut Vorgabe drei Schaltflächen. Im Anzeigemodus wird in der Spalte die Schaltfläche Bearbeiten angezeigt. Sobald Sie auf diese Schaltfläche klicken, wird die Zeile in den Bearbeitungsmodus (mit bearbeitbaren Steuerelementen) versetzt. Im Bearbeitungsmodus wird die Schaltfläche Bearbeiten durch zwei andere Schaltflächen ersetzt: Aktualisieren und Abbrechen. Sie können einen Text (Titel) für die Schaltflächen angeben.
  • Ein ButtonColumn-Element kann jede beliebige Schaltfläche enthalten. Mit einem ButtonColumn-Element können Sie bestimmte vordefinierte Funktionen festlegen (beispielsweise das Markieren oder Löschen einer Zeile) oder neue Schaltflächen mit eigenen Funktionen erstellen.

Wenn Sie eine Schaltfläche als Schaltflächenspalte definieren, legen Sie den Text der Schaltfläche (den Titel) sowie den Schaltflächentyp (LinkButton oder Button) fest. Darüber hinaus können Sie für Schaltflächen im ButtonColumn-Element eine spezielle CommandName-Eigenschaft festlegen. Die Einstellung für diese Eigenschaft legt fest, was beim Klicken auf die Schaltfläche geschieht. Beispiel:

Einstellung Ergebnis
Select Beim Klicken auf die Schaltfläche wird automatisch die Zeile ausgewählt.
Delete Beim Klicken auf die Schaltfläche wird das Ereignis DeleteCommand des DataGrid-Steuerelements ausgelöst.
Ein benutzerdefinierter (nicht vordefinierter) Wert Beim Klicken auf die Schaltfläche wird das Ereignis ItemCommand des DataGrid-Steuerelements ausgelöst.

Hinweis   Bei den Einstellungen für die CommandName–Eigenschaft muss die Groß- und Kleinschreibung beachtet werden.

In den meisten Fällen löst das Klicken auf die Schaltfläche ein Ereignis aus, das Sie anschließend verarbeiten. (Wenn die CommandName-Eigenschaft auf "Select" festgelegt ist, wird das Ereignis zwar ausgelöst, doch gleichzeitig wird es automatisch vom Datenblatt verarbeitet, so dass die angegebenen Zeilen ausgewählt werden.) In der Regel können Sie in Ihrem Handler feststellen, welche Zeile hiervon betroffen ist, und dann die entsprechende Maßnahme ergreifen – beispielsweise können Sie diese Zeile in den Bearbeitungsmodus versetzen (oder diesen beenden) oder die durch diese Datenblattzeile dargestellte Datenzeile löschen usw. Bei benutzerdefinierten Schaltflächen löst das Datenblatt das ItemCommand-Ereignis aus und übergibt den Wert der CommandName-Eigenschaft als Teil des EventArgs-Objekts.

Weitere Informationen zum Erstellen von Schaltflächenspalten im Web Forms-Designer von Visual Studio finden Sie unter Hinzufügen von Schaltflächenspalten zu einem DataGrid-Webserversteuerelement. Weitere Informationen zum Erstellen von Schaltflächenspalten finden Sie unter DataGrid-Webserversteuerelement.

Informationen zur Implementierung der Funktionalität von Schaltflächenspalten finden Sie unter den folgenden Themen:

Hyperlinkspalten

Bei einer Hyperlinkspalte (HyperLinkColumn-Element) wird ein Link in jeder Zeile angezeigt. Sie können entweder statischen Text für den Hyperlink definieren oder den entsprechenden Text aus einer Datenspalte ableiten. In ähnlicher Weise können Sie für einen Link entweder einen statischen URL als Verknüpfungsziel definieren oder den URL aus einer Datenquelle abrufen.

Weitere Informationen zum Erstellen von Hyperlinkspalten im Web Forms-Designer von Visual Studio finden Sie unter Hinzufügen von Hyperlinkspalten zu einem DataGrid-Webserversteuerelement. Weitere Informationen zum Erstellen von Schaltflächenspalten als HTML-Element finden Sie unter DataGrid-Webserversteuerelement.

Vorlagenspalten

Mit einer Vorlagenspalte können Sie ein benutzerdefiniertes Layout für eine Spalte erstellen, das auf einer beliebigen Kombination von Steuerelementen und statischem Text basiert. Vorlagenspalten sind mit Vorlagen vergleichbar, die für das DataList-Steuerelement und das Repeater-Steuerelement verwendet werden. Der Unterschied besteht darin, dass Sie das Layout nur für eine Spalte, und nicht für ein zeilenähnliches Element erstellen. Weitere Informationen über Vorlagen finden Sie unter Vorlagen für Webserversteuerelemente.

Vorlagenspalten bieten die größtmögliche Flexibilität beim Spaltenlayout, da sie Ihnen das vollständige Kontrollieren des Spalteninhalts ermöglichen. Einige Beispiele:

  • Sie können statischen Text einfach mit Steuerelementen kombinieren.
  • Sie können festlegen, welche Steuerelemente im Bearbeitungsmodus verwendet werden. Wenn sich eine gebundene Spalte im Bearbeitungsmodus befindet, wird ein Textfeld angezeigt, unabhängig davon, welche Art von Daten bearbeitet wird. Mit Hilfe eines Vorlagensteuerelements können Sie stattdessen ein Kontrollkästchen, eine Dropdownliste oder andere passende Steuerelemente definieren.

Innerhalb der Vorlagenspalte können Sie bis zu vier separate Vorlagentypen erstellen:

  • In der HeaderTemplate und der FooterTemplate wird definiert, was im Header bzw. Footer der Spalte angezeigt wird.
  • In der ItemTemplate wird definiert, wie Informationen in der Spalte angezeigt werden, wenn sich die Zeile im Anzeigemodus befindet. Häufig werden Steuerelemente hinzugefügt (z. B. das Label-Steuerelement oder das Literal-Steuerelement), um die Daten anzuzeigen.
  • In der EditItemTemplate werden die Steuerelemente (und ggf. der Text) definiert, die in der Spalte angezeigt werden, wenn sich diese im Bearbeitungsmodus befindet. In der Regel beinhaltet dies Textfelder, Kontrollkästchen und Dropdownlisten.

Weitere Informationen zum Erstellen von Vorlagenspalten im Web Forms-Designer von Visual Studio finden Sie unter Hinzufügen von Vorlagenspalten zu einem DataGrid-Webserversteuerelement. Weitere Informationen zum Erstellen von Vorlagenspalten als HTML-Element finden Sie unter DataGrid-Webserversteuerelement.

Siehe auch

Einführung in das DataGrid-Webserversteuerelement | DataGrid-Webserversteuerelement