#891 - Creare Master Page annidate con ASP.NET 2.0

ASP.NET 2.0 introduce il supporto per le Master Page, che consentono di "disegnare" la forma di un sito e mantenerla costante in tutte le pagine.
Spesso però si ha la necessità di personalizzare il template in maniera specifica solo per alcune aree del sito ed è proprio in questi casi che il supporto per le Master Page annidate si rivela quanto mai utile.

Per prima cosa è necessario creare la Master Page principale, ad esempio in questo modo:

...Contenuto del sito...
<asp:contentplaceholder id="Body" runat="server" />

Questa prima Master Page rappresenterà quella utilizzata come base dalle altre. A questo punto, basta crearne di nuove ed impostare nella direttiva <%@Master %> il path di quella su cui ci si basa, per poi sostituire i ContentPlaceHolder con altrettanti controlli Content, che a loro volta conterranno i ContentPlaceHolder necessari a rendere possibile la sostituzione del contenuto della pagina:

<%@ Master MasterPageFile="~/root.master" %>

<asp:Content ID="LocalBody" ContentPlaceHolderID="Body" runat="server">
  Body locale della MP
  <asp:ContentPlaceHolder ID="Body" runat="server" />
</asp:Content>

La Master Page appena creata sarà così utilizzabile normalmente all'interno delle pagine, ma sarà in realtà composta sfruttando a propria volta un'altro oggetto dello stesso tipo.

Con questa tecnica, nell'attuale versione di VS 2005, si perde il supporto a design time.


Approfondimenti

Commenti

Esprimi il tuo giudizio su questo script:

Per procedere devi essere autenticato.

Per inserire un commento, devi registrarti alla nostra community.




IN EVIDENZA
MISC