Gewusst wie: Erstellen von Inhaltsseiten für eine ASP.NET-Masterseite
Aktualisiert: November 2007
Eine Inhaltsseite ist eine ASP.NET-Webseite, die einer Masterseite zugeordnet ist. Die Masterseite richtet ein Layout ein und enthält ein oder mehrere ContentPlaceHolder-Steuerelemente als Platzhalter für Text und Steuerelemente. Die Inhaltsseite enthält nur den Text und die Steuerelemente, die zur Laufzeit mit den ContentPlaceHolder-Steuerelementen der Masterseite zusammengeführt werden. Weitere Informationen finden Sie unter Übersicht über ASP.NET-Masterseiten.
Visual Web Developer bietet eine Reihe von Möglichkeiten, eine Inhaltsseite zu erstellen, darunter auch eine Verknüpfung, die beim Bearbeiten einer Masterseite angezeigt wird. Sie können zum Erstellen einer Inhaltsseite auch mit einer leeren Seite beginnen, der Sie die entsprechende Direktive hinzufügen.
Nach dem Erstellen der Inhaltsseite können Sie Benutzerinhalte erstellen, die mit den einzelnen ContentPlaceHolder-Steuerelementen auf der Masterseite korrespondieren. Alternativ können Sie explizit festlegen, dass der Standardinhalt der Masterseite angezeigt werden darf.
So fügen Sie in Visual Web Developer eine Inhaltsseite hinzu
Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf die Website, und klicken Sie anschließend auf Neues Element hinzufügen.
Klicken Sie in der Liste Von Visual Studio installierte Vorlagen auf Web Form.
Aktivieren Sie das Kontrollkästchen Masterseite auswählen, und klicken Sie dann auf Hinzufügen.
Das Dialogfeld Masterseite auswählen wird angezeigt.
Klicken Sie im Feld Ordnerinhalt auf die Masterseite, die Sie der Seite, die Sie erstellen, zuordnen möchten, und klicken Sie dann auf OK.
So erstellen Sie eine Inhaltsseite während des Bearbeitens einer Masterseite
Klicken Sie bei geöffneter Masterseite im Editor mit der rechten Maustaste irgendwo auf die Seite, und klicken Sie dann auf Inhaltsseite hinzufügen.
Visual Web Developer erstellt eine neue Seite mit dem Namen Defaultx.aspx, wobei x eine laufende Nummer ist.
Hinweis:
Um der Inhaltsseite einen anderen Namen zu geben, schließen Sie sie, klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Namen, und klicken Sie auf Umbenennen.
So erstellen Sie eine Inhaltsseite deklarativ
Erstellen Sie eine neue ASP.NET-Webseite.
Wechseln Sie in die Quellansicht.
Löschen Sie bis auf die @ Page-Direktive alles auf der Seite.
Fügen Sie der @ Page-Direktive ein MasterPageFile-Attribut hinzu, das auf die Masterseite verweist, wie im folgenden Codebeispiel gezeigt.
<%@ Page Language="VB" MasterPageFile="~/Master1.master" %>
<%@ Page Language="C#" MasterPageFile="~/Master1.master" %>
Hinweis:
Die @ Page-Direktive kann zusätzliche Attribute enthalten, z. B. CodeFile oder Inherits, die hier nicht gezeigt werden.
Fügen Sie der Seite Content-Steuerelemente hinzu, die den ContentPlaceHolder-Steuerelementen auf der Masterseite entsprechen.
Hinweis:
Eine Inhaltsseite darf nur die @ Page-Direktive und Content-Steuerelemente enthalten.
Erstellen von Inhalt im HTML-Designer
Wenn Sie in Visual Web Developer eine Inhaltsseite erstellen, erstellt der Designer standardmäßig für jedes in der Masterseite definierte ContentPlaceHolder-Steuerelement ein Content-Steuerelement. Sie können jedem Content-Steuerelement benutzerdefinierte Inhalte hinzufügen oder explizit auf die Standardinhalte zurückgreifen, die evtl. in der Masterseite definiert sind.
So fügen Sie der Seite in der Entwurfsansicht Inhalte hinzu
- Ziehen Sie in der Entwurfsansicht Steuerelemente oder Elemente auf das Content-Steuerelement, oder klicken Sie auf das Steuerelement, und geben Sie Text ein.
So zeigen Sie in der Entwurfsansicht die Standardinhalte der Masterseite an
Klicken Sie mit der rechten Maustaste auf das Content-Steuerelement, und klicken Sie dann auf Smarttag anzeigen.
Klicken Sie auf Masterinhalt als Standard verwenden.
Visual Web Developer zeigt das Content-Steuerelement mit dem in der Masterseite definierten Standardinhalt an. Die Titelleiste des Content-Steuerelements enthält den Begriff (Master), um anzuzeigen, dass die angezeigten Informationen von der Masterseite stammen und nicht von der Inhaltsseite.
In diesem Modus können Sie die im Content-Steuerelement angezeigten Inhalte nicht bearbeiten.
Zum Erstellen von benutzerdefinierten Inhalten klicken Sie mit der rechten Maustaste auf das Steuerelement. Klicken Sie dann auf Smarttag anzeigen und anschließend auf Benutzerdefiniertes Steuerelement erstellen, um das Steuerelement wieder in den Bearbeitungsmodus zu versetzen.
Der Designer entfernt das Content-Steuerelement aus dem Markup der Inhaltsseite.
Hinweis:
Ein Content-Steuerelement ist in der Inhaltsseite nur erforderlich, um das korrespondierende ContentPlaceHolder-Steuerelement der Masterseite zu überschreiben.