How can you achieve nested Masterpages in 2.0?

Answer Posted / amirtha

Master pages can be nested, with one master page
referencing another as its master. Nested master pages
allow you to create componentized master pages.
A child master page has the file name extension .master, as
with any master page. The child master page typically
contains content controls that are mapped to content
placeholders on the parent master page. In this respect,
the child master page is laid out like any content page.
However, the child master page also has content
placeholders of its own to display content supplied by its
own child pages.

Examples:
This is the parent Master Page:

<% @ Master Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html >
<body>
<head runat="server">
<title>Untitled Page</title>
</head>
<form id="Form1" runat="server">
<div>
<h1>Parent Master</h1>
<p style="font:color=red">This is parent master content.</p>
<asp:ContentPlaceHolder ID="MainContent" runat="server" />
</div>
</form>
</body>
</html>

This is the Child Master Page:

<%@ Master Language="VB" MasterPageFile="~/Parent.master"%>
<asp:Content id="Content1"
ContentPlaceholderID="MainContent" runat="server">
<asp:panel runat="server" id="panelMain"
backcolor="lightyellow">
<h2>Child master</h2>
<asp:panel runat="server" id="panel1"
backcolor="lightblue">
<p>This is childmaster content.</p>
<asp:ContentPlaceHolder ID="ChildContent1"
runat="server" />
</asp:panel>
<asp:panel runat="server" id="panel2"
backcolor="pink">
<p>This is childmaster content.</p>
<asp:ContentPlaceHolder ID="ChildContent2"
runat="server" />
</asp:panel>
<br />
</asp:panel>
</asp:Content>

This is the child file that references the child master
page:

<%@ Page Language="VB" MasterPageFile="~/Child.master"%>
<asp:Content id="Content1"
ContentPlaceholderID="ChildContent1" runat="server">
<asp:Label runat="server" id="Label1"
text="Child label1" font-bold="true" />
<br>
</asp:Content>
<asp:Content id="Content2"
ContentPlaceholderID="ChildContent2" runat="server">
<asp:Label runat="server" id="Label2"
text="Child label2" font-bold="true"/>
</asp:Content>



Is This Answer Correct ?    5 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What is a 404 redirect?

789


What is the life cycle of web page?

716


Can we have multiple master pages in asp net?

701


Is it possible for me to change my aspx file extension to some other name?

769


What is directive in asp net?

733


Why web api is better than wcf?

748


Which library is used by the testers and developers to develop automated tests and create testing tools?

740


What does occur first in ASP.Net, Authentication or Authorization?

753


if i wanna deploy my asp.net project to the production server and situation is that i m still not compiled my project i have as-is on my development side now on production server we dont have a visual studio now what kind of settings i need to be to do in webconfig /machine.config file to deploy my project and in iis too....

1819


Can we have multiple worker process in an ASP.NET application? If so then how it has been handled by application? And who handles it?

729


What is the difference between rest and restful?

759


What is difference Between Authentication and authorization?

788


Why cyclomatic complexity is important?

745


Define xmlvalidatingreader class.

775


What are session objects?

725