master page fonctionnement
Bonjour,
je me posait des question sur l'utilité des master page :
j'ai bien comprit le principe, sur notre master page on a le squellette de l'application avec des "especes" d'include (<asp:contentplaceholder ...>)
Par contre un truc que je ne trouve pas super :
dans ma master page j'ai 2 pages inclut.
Code:
1 2 3 4 5 6 7 8 9
|
<tr>
<td width="20%">
<asp:contentplaceholder id="ident" runat="server"></asp:contentplaceholder>
</td>
<td rowspan="2">
<asp:contentplaceholder id="contenu" runat="server"></asp:contentplaceholder>
</td>
</tr> |
pour "ident" j'ai elle s'appelle ident.aspx :
Code:
1 2 3 4 5 6
|
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" Title="Untitled Page" %>
<asp:Content ID="ident" ContentPlaceHolderID="ident" Runat="Server">
Login : <input type="text" name="login" /> <br />
Pass : <input type="text" name="pass" /> <br />
</asp:Content> |
et pour "contenu" elle s'appelle accueil.aspx :
Code:
1 2 3 4 5
|
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" Title="Untitled Page" %>
<asp:Content ID="contenu" ContentPlaceHolderID="contenu" Runat="Server">
test contenu
</asp:Content> |
Le probleme est que lorsque je vais sur localhost/accueil.aspx je n'ai que le bloc contenu qui s'affiche, et inversement je n'ai que le bloc ident qui s'affiche lorsque je vais sur localhost/ident.aspx.
Du coup pour resoudre ce probleme j'ai mis dans chacune de mes pages (accueil.aspx et ident.aspx) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" Title="Untitled Page" %>
<asp:Content ID="contenu" ContentPlaceHolderID="contenu" Runat="Server">
test contenu
</asp:Content>
<asp:Content ID="ident" ContentPlaceHolderID="ident" Runat="Server">
Login : <input type="text" name="login" /> <br />
Pass : <input type="text" name="pass" /> <br />
</asp:Content> |
et la ça fonctionne.
Mais je ne vois donc pas l'interet des master page dans cet exemple sachant que pour chaque page "inclut" je vais devoir reprendre toute mes autre pages : ident et accueil dans mon cas.
En fait ce que je voudrais (et ce que je pensai que les master page faisaient) c'est que sur ident.aspx je mette seuement le code de ident (formulaire d'identification) et pas les codes des autres blocs inclut. Est-ce possible ?
Je n'utilise peut etre pas la bonne methode ou il y a peut etre un truc qui m'echappe...
Merci d'avance.