Vorlagen für ASP.NET-Webserver-Steuerelemente
Aktualisiert: November 2007
Die meisten Webserver-Steuerelemente haben eine Standarddarstellung und ein Standardlayout. Diese Einstellungen können durch Festlegen von Eigenschaften und mit Formatvorlagen geändert werden. Bei manchen Webserver-Steuerelementen können Sie das Aussehen auch über Vorlagen anpassen.
Eine Vorlage ist eine Gruppe von HTML-Elementen und Steuerelementen, die das Layout für einen bestimmten Teil eines Steuerelements bilden. Im DataList-Webserver-Steuerelement können Sie z. B. mithilfe einer Kombination von HTML-Elementen und Steuerelementen das Layout für die einzelnen Zeilen der Liste erstellen. Genauso verfügt das GridView-Webserver-Steuerelement über eine Standarddarstellung für Datenblattzeilen. Sie können jedoch das Aussehen des Datenblatts anpassen, indem Sie verschiedene Vorlagen für einzelne Spalten definieren.
Hinweis: |
---|
Vorlagen unterscheiden sich von Formaten. Eine Vorlage definiert den Inhalt eines Abschnitts eines Steuerelements, z. B. den Inhalt einer Zeile im DataList-Steuerelement. Mit Formaten wird die Darstellung der Elemente angegeben, z. B. Farbe, Schriftart usw. Formate können einem Steuerelement als Ganzem (z. B. zum Festlegen der Schriftart für das GridView-Steuerelement) als auch Vorlagenelementen zugewiesen werden. |
Vorlagen bestehen aus HTML-Elementen und eingebetteten Serversteuerelementen. Wenn das Steuerelement auf der ASP.NET-Webseite ausgeführt wird, stellt die Infrastruktur des Steuerelements den Inhalt der Vorlage und nicht die HTML-Standardelemente für das Steuerelement dar.
Welche Steuerelemente unterstützen Vorlagen?
Nicht alle Webserver-Steuerelemente unterstützen Vorlagen. Meistens werden Vorlagen von komplexen Steuerelementen unterstützt. Hierzu gehören GridView, DataList, Repeater, FormView, DetailsView, Login sowie andere Steuerelemente.
Jedes Steuerelement unterstützt eine etwas andere Gruppe von Vorlagen, die Layouts für verschiedene Teile des Steuerelements (z. B. Header, Footer, Element und ausgewähltes Element) angeben. Je nachdem, was angepasst werden soll, können Sie eine Vorlage für beliebige oder alle Elemente angeben. Im GridView-Steuerelement können Sie Vorlagen für Spalten (nicht für Zeilen) angeben.
In der folgenden Tabelle sind die Webserver-Steuerelemente zusammengefasst, die Vorlagen unterstützen.
Steuerelement |
Vorlagen |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Erstellen von Vorlagen
Sie können Vorlagen direkt in der ASPX-Datei erstellen. Vorlagen werden als XML-Deklarationen erstellt. Im folgenden Beispiel wird gezeigt, wie Sie eine Liste von Mitarbeiternamen, Telefonnummern und E-Mail-Adressen mithilfe von Vorlagen im DataList-Steuerelement darstellen können. Das Layout der Mitarbeiterdaten wird in der ItemTemplate mit datengebundenen Steuerelementen angegeben.
Hinweis: |
---|
Wenn Sie einen visuellen Designer verwenden, z. B. Visual Studio 2005, können Sie Vorlagen normalerweise mit einem visuellen Tool erstellen und bearbeiten. Weitere Informationen finden Sie unter Gewusst wie: Erstellen von Vorlagen für Webserver-Steuerelemente mithilfe des Designers. |
<asp:datalist id="DataList1" >
<HeaderTemplate>
Employee List
</HeaderTemplate>
<ItemTemplate>
<asp:label id="Label1"
Text='<%# DataBinder.Eval(Container, "DataItem.EmployeeName")%>'></asp:label>
<asp:label id="Label2"
Text='<%# DataBinder.Eval(Container, "DataItem.PhoneNumber")%>'></asp:label>
<asp:Hyperlink id="Hyperlink1"
Text='<%# DataBinder.Eval(Container, "DataItem.Email") %>'
NavigateURL='<%# DataBinder.Eval(Container, "DataItem.Link") %>'>
</asp:Hyperlink>
</ItemTemplate>
</asp:datalist>
<asp:datalist id="DataList1" >
<HeaderTemplate>
Employee List
</HeaderTemplate>
<ItemTemplate>
<asp:label id="Label1"
Text='<%# DataBinder.Eval(Container, "DataItem.EmployeeName")%>'></asp:label>
<asp:label id="Label2"
Text='<%# DataBinder.Eval(Container, "DataItem.PhoneNumber")%>'></asp:label>
<asp:Hyperlink id="Hyperlink1"
Text='<%# DataBinder.Eval(Container, "DataItem.Email") %>'
NavigateURL='<%# DataBinder.Eval(Container, "DataItem.Link") %>'>
</asp:Hyperlink>
</ItemTemplate>
</asp:datalist>
Arbeiten mit Vorlagen
Ein auf Vorlagen basierendes Steuerelement erstellt nur bei Bedarf eine Instanz seines Vorlageninhalts. Beim Ladeereignis der Seite werden daher möglicherweise keine Instanzen der Steuerelemente in der Vorlage erstellt. Dies kann die Verwendung eines Steuerelements in einer Vorlage beeinträchtigen, da nicht davon ausgegangen werden kann, dass beim Laden der Seite eine in einer Vorlage enthaltenen Steuerelementinstanz erstellt wurde.
Geschachtelte Vorlagen und Masterdateien werden in der Entwurfsansicht von Visual Web Developer oder Visual Studio 2005 nicht dargestellt. Die Verschachtelung wird jedoch in einem Webbrowser ordnungsgemäß dargestellt.
Siehe auch
Konzepte
ASP.NET-Webserversteuerelemente und CSS-Formatvorlagen