Antonio Feliziani
a- a+

Le Pagine Master

Le pagine master ASP.NET consentono di creare un layout lineare/costante per le pagine della vostra applicazione web.

Con una singola pagina master è possibile definire l'aspetto e il comportamento standard per tutte o per un gruppo di pagine dell'applicazione. Successivamente potranno essere create delle pagine di contenuto singole con gli elementi che si desidera visualizzare. Quando vengono richieste, le pagine di contenuto vengono unite alla pagina master generano un output in cui si congiuncono il layout definito nella pagina master e il contenuto della pagina di contenuto.

Le pagine master sono costituite essenzialmente da due parti, la pagina master vera e propria e una o più pagine di contenuto.

Una pagina master è un file ASP.NET con estensione master, ad esempio MySite.master, che presenta un layout predefinito in cui sono compresi elementi HTML, controlli server e testo statico. La pagina master è identificata da una direttiva @ Master  speciale, che sostituisce la direttiva @ Page utilizzata per le pagine aspx ordinarie, questa ha dei campi DIV che faranno da involucro a contenuti dinamici, consideriamoli come segnaposto per contenuti dinamici.

Tramite questi segnaposto è possibile definire aree per la visualizzazione di contenuti sostituibili, definiti a loro volta nelle pagine di contenuto.

Una volta definiti i controlli ContentPlaceHolder, una pagina master può essere analoga alla seguente:

 

 

<% @ Master Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML

    1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html  >

<head runat="server" >

    <title>Master page title</title>

</head>

<body>

    <form id="form1" runat="server">

        <table>

            <tr>

                <td><asp:contentplaceholder id="Main" runat="server" /></td>

                <td><asp:contentplaceholder id="Footer" runat="server" /></td>

            </tr>

        </table>

    </form>

</body>

</html>

 

 

Il contenuto di una pagina di contenuto viene creato aggiungendo controlli Content ed eseguendo il mapping di questi ultimi sui controlli ContentPlaceHolder nella pagina master.

Ad esempio, nella pagina master di esempio  sono presenti segnaposto di contenuto denominati Main e Footer. Nella pagina di contenuto è possibile creare due controlli Content mappati rispettivamente sul segnaposto Main del controllo ContentPlaceHolder e sul segnaposto Footer del controllo ContentPlaceHolder, come indicato nella figura che segue.

Sostituzione del contenuto dei segnaposto

Una volta creati i controlli Content, è possibile aggiungervi testo e ulteriori controlli. In una pagina di contenuto tutti gli elementi non inclusi all'interno del controllo Content genereranno un errore, ad eccezione dei blocchi di script per il codice server. In una pagina di contenuto possono essere effettuate tutte le operazioni eseguibili in una pagina ASP.NET. È ad esempio possibile generare contenuti per un controllo Content utilizzando i
 

Questa ad esempio può essere esempio di una pagina di contenuto :

 

<% @ Page Language="VB" MasterPageFile="~/Master.master" Title="Content Page 1" %>

<asp:Content ID="Content1" ContentPlaceHolderID="Main" Runat="Server">

    Main content.

</asp:Content>

   

<asp:Content ID="Content2" ContentPlaceHolderID="Footer" Runat="Server" >

    Footer content.

</asp:content>



Ti potrebbe interessare anche

commenta la notizia

C'è 1 commento
Redazione
Ti interessano altri articoli su questo argomento?
Chiedi alla nostra Redazione!