Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 2.0 / 3.5 / 4.0
Capire le MasterPage
venerdì 27 marzo 2009 - 12.34
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
mv
Profilo
| Newbie
16
messaggi | Data Invio:
ven 27 mar 2009 - 12:34
Buon giorno. Stamani avevo questa necessità: pagina richiama.aspx con 3 button.
BUTTON1 BUTTON2 BUTTON3
__________________________
Premendo il bottone 1, doveva succedere questo: l'header della pagina (contenente i 3 bottoni di navigazione) doveva rimanere tale e quale, il
corpo della pagina doveva cambiare a seconda del bottone premuto. Quindi, leggendo quà e là su ipotetiche frame, ho scoperto che la soluzione migliore
è l'uso delle master page. Allora ho aggiunto una master page nella quale ho inserito 4 ContentPlaceHolder.
Nel primo ci ho messo l'header ossia i 3 bottoni e l'ho chiamato: CPHHeader
Nel secondo ci ho messo una scritta: "CIAO PAGINA 1" e l'ho chiamato CPHBody1
Nel terzo ci ho messo una scritta: "CIAO PAGINA 2" e l'ho chiamato CPHBody2
Nel quarto ci ho messo una scritta: "CIAO PAGINA 3" e l'ho chiamato CPHBody3
Adesso torno nella mia pagina chiamata richiama.aspx e da qui nascono le
incomprensioni.
Questo è il codice della pagina (semplicissimo)
<%@ Page Language="VB" MasterPageFile="Tickets.master" AutoEventWireup="true" CodeFile="richiama.aspx.vb" Inherits="Applicazioni_Segnalazioni_richiama" %>
<%@ MasterType VirtualPath="Tickets.master" %>
<%@ Import Namespace="Applicazioni_Segnalazioni_MasterPage" %>
<asp:Content ID="content1" runat="server" ContentPlaceHolderID="CPHHeader"></asp:Content>
<asp:Content ID="content2" runat="server" ContentPlaceHolderID="CPHBody1"></asp:Content>
<asp:Content ID="content3" runat="server" ContentPlaceHolderID="CPHBody2"></asp:Content>
<asp:Content ID="content4" runat="server" ContentPlaceHolderID="CPHBody3"></asp:Content>
Però non riesco a capire come funzionino e far si che: quando la pagina si
carica, il primo CPH deve sempre rimanere visibile (perchè ci sono i bottoni
di navigazione)
il secondo terzo e quarto devono apparire o scomparire a seconda del bottone
che premo. Come posso fare?
Grazie!!
MaVerina
balfaz
Profilo
| Expert
726
messaggi | Data Invio:
ven 27 mar 2009 - 12:41
se vuoi che questi bottoni rimangono visibile allora non devono trovarsi dentro una ContPg ma bensì dentro l'header della master page
la master page fa una sorta di cornice e i pezzi cambianti sono ovviamente quelli che si trovano dentro questa cornice, questo pero non ti impedisce d'avere delle masterpage annidate.
Ti do questi link che ti faranno capire un po meglio
http://msdn.microsoft.com/it-it/library/cc185075.aspx
Dove troverai sempre una mano disposta ad aiutarti è nell'estremo del tuo proprio braccio
mv
Profilo
| Newbie
16
messaggi | Data Invio:
ven 27 mar 2009 - 12:51
Ti ringrazio del link che adesso mi metterò a leggere, una domanda però che non sono sicura. Ma per quello che voglio fare io:
modificare il corpo di una pagina in base al bottone premuto, vanno bene le master page?
Nel senso, come posso fare questo:
Se bottone1 = premuto
allora
ContentPlaceHolder1.visibile= true
ContentPlaceHolder2.visibile= false
ContentPlaceHolder3.visibile= false
fine
Nel senso, l'header rimane uguale e ok, ma come cambio le visualizzazioni dei placeholder in base a eventi? tipo il click di un bottone?
Ciao e grazie!
balfaz
Profilo
| Expert
726
messaggi | Data Invio:
ven 27 mar 2009 - 13:00
non funziona cosi.
chiude gli occhi (ovviamente dopo aver letto questo, se non no lo puoi leggere
) e immagina
la master come un contenitore, ogni Content che crei dentro la master potrà avere dentro di se una pagina (sia html o aspx), che alla sua volta queste pagine dovranno dire al suo interno che loro si presenteranno ogni volta che vengono chiamate dentro questa content, quindi basterebbe che questi bottoni chiamano direttamente la pagina (response.redirect("miaPagina.aspx")) e questa se presenterà nel content specificato dentro la masterpage che lo contiene... non so si mi spiego?, ma non metterti in testa cose strane solo per il termino content, perchè alla fine tu continuerai a lavorare sempre con pagine.aspx che però hanno già una posizione definita dentro un layout..... pensa alle content come una sorta di iframe in html
Siamo sempre qui
Dove troverai sempre una mano disposta ad aiutarti è nell'estremo del tuo proprio braccio
mv
Profilo
| Newbie
16
messaggi | Data Invio:
ven 27 mar 2009 - 13:15
Ciao Belfaz sei gentilissimo e scusa se ti ho massacrato con tutte queste domande ma ti voglio chiedere l'ultimo favore.
Ho chiuso gli occhi ed ho immaginato. Purtroppo era come pensavo le MP non fanno al caso mio.
Quindi, correggo il tiro e faccio un passetto indietro, ritornando alla mia effettiva necessità :)
Faccio un esempio pratico tipo il mio
Ho un pagina chiamata classifiche con dentro 3 bottoni in alto: Serie A, Serie B, Serie C.
Ho tre pagine aspx contenti le classifiche dei 3 gironi chiamate: seriea.aspx, serieb.aspx e seriec.aspx.
Vorrei che: premendo il bottone 1 si veda il contenuto della serie a con il 2 la serie b ecc, senza però aprire una nuova pagina, una specie dei vecchi FRAME per intenderci.
Come si può fare?
Grazie, sei gentilissimo
balfaz
Profilo
| Expert
726
messaggi | Data Invio:
ven 27 mar 2009 - 13:49
risponde queste domande per farmi una idea del tuo ambiente di sviluppo:
cosa usi per far vedere queste classifiche, gridview, datalist o cosa?
Alla fine la usi la masterpage o no?
non fare la carica di una pagina nuova cosa intendi?
>scusa se ti ho massacrato con tutte queste domande
non ti preoccupare si entri in un forum e per fare domande
Dove troverai sempre una mano disposta ad aiutarti è nell'estremo del tuo proprio braccio
mv
Profilo
| Newbie
16
messaggi | Data Invio:
ven 27 mar 2009 - 15:06
Dunque, in questa pagine c'è un po di tutto.
In una textbox label dropdownlist
nella seconda gridview
nella terza gridview e qualche bottone.
Gentilissimo :)
balfaz
Profilo
| Expert
726
messaggi | Data Invio:
ven 27 mar 2009 - 16:16
989_WebSites.zip
ti invio questo allegato, l'ho fatto velocemente e senza avere cura nei dettagli ma per farti capire come funziona la master.
Se ci son problemi siamo sempre qui, buon divertimento
Dove troverai sempre una mano disposta ad aiutarti è nell'estremo del tuo proprio braccio
mv
Profilo
| Newbie
16
messaggi | Data Invio:
ven 27 mar 2009 - 16:35
Grazie, da qui non posso leggere la webmail (proxy) appena arrivo a casa provo e domani mattina ti faccio sapere :)
Sei stato davvero gentilissimo!
balfaz
Profilo
| Expert
726
messaggi | Data Invio:
ven 27 mar 2009 - 17:40
Di niente
Dove troverai sempre una mano disposta ad aiutarti è nell'estremo del tuo proprio braccio
Torna su
Stanze Forum
Elenco Threads
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 !