Das ASP.NET 2.0 FormView-Steuerelement ähnelt dem DetailsView-Steuerelement darin, dass es bequem einzelne Datensätze aus einer Back-End-Datenquelle anzeigt. In diesem Artikel werden die Syntax und Anwendung dieses Steuerelements erläutert.
Anpassung
Obwohl beide Steuerelemente jeweils einen Datensatz anzeigen, besteht der Hauptunterschied zwischen DetailsView und FormView darin, dass FormView benutzerdefinierte Vorlagen verwendet. Das FormView-Steuerelement definiert das Datenlayout nicht vor. Stattdessen erstellen Sie eine Vorlage, die das Steuerelement enthält, um einzelne Felder aus dem Datensatz anzuzeigen. Die Vorlage enthält die Formate, Steuerelemente und Bindungsausdrücke, die zum Erstellen des Formulars verwendet werden.
Sie können die Anzeige von Datensätzen in drei Formen steuern: Bearbeiten, Anzeigen und Hinzufügen eines neuen Datensatzes. Darüber hinaus können Sie Kopf- und Fußzeilenelemente einbinden und formatieren. Sie können auch jedes der verfügbaren ASP.NET-Steuerelemente in verschiedenen Teilen des FormView-Steuerelements nutzen.
Die Syntax zum
Deklarieren und Verwenden einer FormView-Steuerelementinstanz ist der Deklaration und Verwendung einer DetailsView-Steuerelementinstanz sehr ähnlich. Der Hauptunterschied zwischen ihnen besteht darin, dass Sie das Format und die Vorlage für die Anzeige der Daten in das FormView-Steuerelement einbeziehen müssen, da keine Standardeinstellungen verwendet werden können. Listing A zeigt einen Teil der Syntax zum Öffnen eines FormView-Element-Tags.
Möglicherweise ist Ihnen aufgefallen, dass viele Attribute HTML-Tabellenelementen entsprechen, beispielsweise Titel und Rahmen. Dies zeigt, dass ASP.NET HTML-Tabellen zum Rendern des FormView-Steuerelements verwendet.
Eine umfassendere Liste der FormView-Steuerelementeigenschaften können Sie online auf der Microsoft-Website anzeigen. In der folgenden Tabelle sind einige wichtige Eigenschaften aufgeführt, auf die Sie achten sollten.
·AllowPaging: Ein boolescher Wert, der angibt, ob der Benutzer die Datensätze in der angegebenen Datenquelle auslagern kann. Wenn auf „true“ gesetzt, wird das standardmäßige paginierte Zahlensystem (von 1 bis zur Anzahl der Datensätze) unten in den angezeigten Datensätzen angezeigt. Paginierungslinks können über verschiedene Paginierungseigenschaften angepasst werden.
·DataKeyNames: Schlüsselfelder der Datenquelle.
·DataSourceID: Wird zum Transplantieren der Datenquellenelement-ID des FormView-Steuerelements verwendet. Bei Verwendung von SQL Server entspricht dies der ID, die dem SqlDataSource-Element zugewiesen ist.
·DefaultMode: Ermöglicht Ihnen, das Standardverhalten des Steuerelements festzulegen. Das heißt, wie es zunächst angezeigt wird, wenn der Benutzer darauf zugreift. Mögliche Werte sind: ReadOnly, Insert und Edit.
·EmptyDataText: Der Text, der angezeigt wird, wenn ein leerer Datenwert gefunden wird.
Wenn Sie ein FormView-Steuerelement deklarieren, muss dessen Inhalt auch entsprechend formatiert werden. Seine Daten werden über Vorlagen angezeigt. Das FormView-Steuerelement verwendet hauptsächlich fünf Vorlagen:
·ItemTemplate: Es steuert die Anzeige, wenn Benutzer Daten anzeigen.
·EditItemTemplate: Es bestimmt das Format und die Anzeige von Datenelementen, wenn Benutzer Datensätze bearbeiten. Innerhalb dieser Vorlage verwenden Sie andere Steuerelemente, z. B. TextBox-Elemente, um Benutzern das Bearbeiten von Werten zu ermöglichen.
·InsertItemTemplate: Ähnlich wie beim Bearbeiten eines Datensatzes steuert diese Vorlage die Anzeige von Feldern, die es dem Benutzer ermöglichen, einen neuen Datensatz in der Backend-Datenquelle hinzuzufügen. Bei der Eingabe neuer Werte sollte dem Benutzer je nach Anforderung der Daten die freie Texteingabe gestattet oder auf bestimmte Werte beschränkt werden.
·FooterTemplate: Bestimmt den Inhalt, der ggf. im Fußzeilenteil der FormView-Steuertabelle angezeigt wird.
·HeaderTemplate: Bestimmt den Inhalt, der ggf. im Header-Teil der FormView-Steuertabelle angezeigt wird.
Mit diesen Vorlagen können Sie die Anzeige und das Verhalten von Daten steuern, die an ein FormView-Steuerelement gebunden sind. Beispielsweise stellt das ASP.NET-Webformular in Listing B eine Verbindung zu einer Standard-Northwind-Datenbank her und ermöglicht Benutzern das Anzeigen, Bearbeiten, Löschen und Hinzufügen neuer Mitarbeiterdatensätze über die Felder Vorname, Nachname, Einstellungsdatum und private Telefonnummer.
Es verwendet das TextField-Steuerelement, um Daten anzuzeigen, die bearbeitet oder hinzugefügt werden, sowie Werte, die nur zur Überprüfung angezeigt werden. ItemTemplate verwendet CSS zum Formatieren von Tabellen, während InsertTemplate HTML-Stile zum Formatieren verwendet. Welche Methode verwendet wird, entscheidet der Entwickler.
Hinweis: ASP.NET verwendet Button-Steuerelemente zum Hinzufügen, Bearbeiten, Löschen und Speichern von Datensätzen.
Im Button-Steuerelement konvertiert der CommandName-Wert von New den Datensatz in den Einfügemodus und lädt die InsertItemTemplate-Vorlage, die es dem Benutzer ermöglicht, einen neuen Datensatzwert einzugeben. Mit dem Wert „Edit CommandName“ können Sie der ItemTemplate eine neue Schaltfläche hinzufügen, um das FormView-Steuerelement in den Bearbeitungsmodus zu versetzen.
Sie können der ItemTemplate-Vorlage eine Schaltfläche mit dem CommnadName-Wert „Löschen“ hinzufügen, um dem Benutzer das Löschen des aktuellen Datensatzes aus der Datenquelle zu ermöglichen. Der Befehl „CommnadName“ von „Update“ speichert die Daten, während „Cancel“ den Vorgang beendet.
Es ist erstaunlich, wie einfach es für
Entwickler ist, viele der neuen ASP.NET 2.0-Funktionen zu steuern
.FormView erweitert die einfache Funktionalität von DetailsView und ermöglicht Ihnen die einfache Steuerung des zu formatierenden Anzeigeinhalts nach Bedarf. Diese neue Steuerung bietet Ihnen eine weitere Möglichkeit zur Bereitstellung Ihrer Lösungen.