Mater e detail

lunedì 11 settembre 2006 - 18.30

ricky Profilo | Junior Member

Ciao, vorrei gestire una pagina master nella quale inserire un menu di un componente per poi visualizzarlo in tutte le pagine.

Il problema è che, con l'impostazione attuale, il menu non risulta visibile in quanto "nascosto" dal content del detail... come posso modificare il tutto??

nella mia pagina ho Detail.master ho:


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

<div class="header">

</div>

<asp:contentplaceholder id="Main" runat="server" >
<div id="home" class="page" style="left: 0px; top: 0px">
<div id="content" style="text-align: left">
&nbsp;</div>
</div>
</asp:contentplaceholder>

<div class="footerbg">
<div class="footer">
<asp:menu id="menub" runat="server"
datasourceid="SiteMapDataSource1"
cssclass="menub"
orientation="Horizontal"
maximumdynamicdisplaylevels="0"
skiplinktext=""
staticdisplaylevels="2" />
POLYHEDRON &nbsp;Copyright &copy; 2006 Skill Risorse Umane</div>
</div>

<asp:sitemapdatasource id="SiteMapDataSource1" runat="server" startingnodeoffset="0" />

</form>


Mentre nelle mie pagine ho




<%@ Page Language="C#" MasterPageFile="~/Detail.master" Title="POLYHEDRON | Links"
CodeFile="Links.aspx.cs" Inherits="Links_aspx" %>
<asp:content id="Content1" contentplaceholderid="Main" runat="server">
<div id="links" contenteditable="true" style="left: 0px; top: 38px">
<div id="content" style="text-align: center">
<br />
<br />
<br />
<table id="Table3" align="center" border="0" cellpadding="0" cellspacing="0" height="100%"
style="width: 500px; text-align: left">
<tbody>
<tr>
<td height="0" valign="bottom">
....
</td>
</tr>
</tbody>
</table>
</div>
</div>

</asp:content>


Quindi quando inserisco un Menu nel Master viene sovrapposto dal content delle varie pagine (e di conseguenza non lo vedo)

Ho fatto alcune prove ma non riesco a:

lasciare un'area fissa a SX (nel master), dove inserirò il menu
nelle varie pagine utilizzare solo un'area di Dx, lasciando quindi visibile l'area per il Menu

Grazie per l'aiuto

Brainkiller Profilo | Guru

Probabilmente è un errato uso dei CSS.
Prova così:

<html> <body> <style type="text/css"> #Container{width:100%;background:red} #MenuPane{height:100px;width:200px;float:left;background:yellow} </style> <div id="Container"> <div id="MenuPane"> </div> </div> </body> </html>

Menù Pane è la colonna in cui inserire il Menù e Container è la cornice esterna.
Il menù sta a sinistra per via del float:left.
Adatta l'esempio in base alle tue necessità.

Ciao

David De Giacomi | Microsoft MVP
http://blogs.dotnethell.it/david/

ricky Profilo | Junior Member

Ma intendi nel master o nel detail??

Lo chiedo perchè io nel master ho

<asp:contentplaceholder id="Main" runat="server" >
<div id="home" class="page" style="left: 0px; top: 0px">
<div id="content" style="text-align: left">
</div>
</div>
</asp:contentplaceholder>


mentre nelle pagine detail ho

<div id="links" contenteditable="true" style="left: 0px; top: 0px">
<div id="content" style="text-align: left">
</div>
</div>


Non capisco, ho fatto parecchie prove, quale div indica la struttura ustata in tutte le pagine (nel master), quale div indica le dimensioni dei dettagli eccc...

in sintesi ho 4 div
Nel master:
home
content
Nel detail:
links
content

E faccio una confusione bestiale nel capire lo scopo di ogni div!

Brainkiller Profilo | Guru

>Ma intendi nel master o nel detail??

Intendo nel Master.
Poi all'interno di quei DIV che ti ho indicato ci metti dei ContentPlaceHolder.
Nel ContentPlaceHolder del menù ci trascini il menù (tipicamente un .ascx) e poi nelle pagine derivate dalla Master puoi settare a default il content del PlaceHolder del menù in modo che ti appaia automaticamente, mentre nell'altro PlaceHolder ci metti il tuo contenuto, diverso per ogni pagina.
Ciao

David De Giacomi | Microsoft MVP
http://blogs.dotnethell.it/david/
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5