Visualizzazione dei risultati da 1 a 9 su 9

Discussione: masterPage

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    248

    masterPage

    salve,

    sto seguendo il tutorial e sto cercando di capire come funzionano le Pagine Mster.

    Ho creato una MP ed una web form per i contenuti.
    Nella form dei contenuti, vorrei cambiare il testo di un oggetto label.

    Da quel che ho letto, posso usare una classe public od un findControl, ma non mi è completamente chiaro il meccanismo.

    Nella page_load della pagina dei contenuti, dovrei inserire il comando per poter inseire il testo nella label.

    Qualcuno mi potrebbe indicare il comando preciso? anche perchè ho letto che nella pagina dei contenuti va indicato il riferimento (attraverso il virtualPath) della pagina master a cui si riferisce) della MP.

    Spero di essere stato chiaro

    grazie

  2. #2
    label1.text = "Stringa"

    Se la label è sulla master scrivi
    Master.label1.text = "Stringa"

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    248
    ciao Max,
    grazie per la risposta, in page_load ho inserito ciò che mi hai indicato, ma il sistema mi da' questo errore:
    1 'System.Web.UI.MasterPage' non contiene una definizione per 'lblInte01'.

    Nella MP l'oggetto label è inserito nel body ed in un DIV:
    ...
    <body>
    <form id="form1" runat="server">
    <div id="container">
    <div id="testa">
    <asp:Label ID="lblInte01" CssClass="Inte01" runat="server" Text="Intestazione"> </asp:Label>
    [img]Img/Logo.gif[/img]
    </div>
    ...

    Nella web form che eredita, nel page_load, dovrei cambiare la scritta dell'ID lblInte01 e non ho capito come si fa.

    Qualche altro suggerimento?

  4. #4
    Ciao, ho provato a farlo e mi è riuscito così:
    Nel Page_Load della content metti

    codice:
    'VB
    Dim labelmaster As WebControls.Label = CType(Master.FindControl("lblInte01"),WebControls.Label)
    labelmaster.Text = "Cambiata nella content"
    
    
    //C#
    WebControls.Label labelmaster = (WebControls.Label) Master.FindControl("lblInte01");
    labelmaster.Text= "Cambiata nella content";
    Se importi System.Web.UI.WebControls puoi anche scrivere solo Label come tipo.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    248
    ciao Max,

    grazie per l'aiuto ho dovuto modificare il codice in questa maniera:

    System.Web.UI.WebControls.Label labelmaster = (System.Web.UI.WebControls.Label)Master.FindContro l("lblInte01");

    perchè mi dava un errore.

    Non so se ne approfitto, ma sono anche a digiuno di C#.

    Se ho ben capito la parte finale di questa istruzione
    System.Web.UI.WebControls.Label
    indica il tipo di oggetto che si vuole usare, mentre labelmaster indica la variabile (non so come si chiami) contenente il collegamento all'oggetto label della masterPage.

    Quindi, se ho ben capito, posso usare questo sistema per cambiare anche i riferimenti all'URL di un oggetto linkButton.

    Mica sai se queste istruzioni rallentano il tempo di risposta della pagina o se sono sconsigliate?

    grazie

  6. #6
    Esatto System.Web.UI.WebControls.Label identifica un tipo, è come dire
    boolean, int o Object.
    labelmaster è il nome che io ho dato alla variabile e potevo anche chiamarlo pincopallino.
    L'errore che ti dava è perche non hai importato System.Web.UI.WebControls
    e quindi ogni volta gli devi specificare tutto il path.
    Se scrivi all'inizio della pagina

    //c#
    using System.Web.UI.WebControls

    'VB
    Imports System.Web.UI.WebControls

    poi ti eviti di ristarlo a scrivere tutto nel codice e migliori la leggibilità
    In generale cmq dovrai farlo ogni volta che deciderai di utilizzare un particolare
    oggetto del framework, che sia inviare una mail, usare una collection ecc...
    Certo che ogni oggetto sta in uno space apposito

    Si questo sistema puoi usarlo per cambiare qualsiasi proprietà ai tuoi controlli.
    Anche io come te ho cominciato da poco ad usare asp.net saranno due mesetti
    e non so dirti se questo va ad influire sulle prestazioni

    Mi è parso di capire che abbiamo un passato simile, anche io come te ho programmato
    qualche anno in in linguaggio OO (molto simile a java) per poi passare ad asp ed infine
    ad asp.net.
    Posso consigliarti uno studio approfondito del framework 2.0? E' il nocciolo
    sul quale si basa non solo Asp.net ma anche la programmazione microsoft Windows Based.
    Una volta che avrai famigliarizzato con quello tutto ti sarà più facile.
    A tal scopo di suggerisco Mcts Self-Paced Training Kit (Exam 70-536) Microsoft Framework 2.0 Application Development Foundation
    che il testo ufficiale microsoft che ti prepara a dare l'esame 70-536, il primo di due
    per prendere la certificazione MCTS (Microsoft Certified Technology Specialist)

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    248
    ti ringrazio, sei molto chiaro nelle spiegazioni.
    Ho imparato un linguaggio OO, ma non ha niente a che vedere con ciò che sto studiando adesso.
    Tieni presente che sono esposto su + fronti, ASP .NET C# CSS ed altro e l'aiuto come il tuo mi è fondamentale per capire ed andare avanti.

    Tutti i consigli che mi puoi dare per me sono ORO.

    A tal scopo di suggerisco Mcts Self-Paced Training Kit (Exam 70-536) Microsoft Framework 2.0 Application Development Foundation

    Non mi dire che questo testo è in inglese in quanto sono a livello scolastico.
    E' un libro od un file che si può scarica re da qualche parte?


    Scusa se ti pongo un'altra domanda sempre sulle MP, ma ho notato un'anomalia e non so se risolverla con il findControl o se c'è qualche altra soluzione.

    In C:\ ho la MP
    in C:\Img ho il logo (immagine gif)
    Nella MP ho l'intestazione con il logo.
    Se la web form figlia sta sullo stesso livello della MP l'immagine si vede
    se la web form è in una sottocartella, l'immagine non si vede più.

    Ho controllato il codice della MP ed ho notato che l'errore è dovuto a questa istruzione:
    [img]Img/Logo.gif[/img]

    in quanto stando in una sottocartella, il src dovrebbe essere src="../Img/logo.gif

    Pensavo di non avere tale problema in quanto la MP è posizionata bene, però si vede che come posizionamento comanda la web form figlia.
    Come unica soluzione, mi viene quella di cercare attraverso il findControl l'immagine e ridefinire il path del src

    Che ne dici?

    ti ringrazio di nuovo

    Gaetano

  8. #8
    Ciao, il libro che ti ho suggerito al momento è solo in inglese.
    Devi però armarti di buona volontà e cominciare a studiare le cose in inglese
    perche nel nostro lavoro direi che è essenziale!
    Io so spiccicare giusto mezza parola ma anche grazie alle migliaia di pagine
    che mi son dovuto leggere posso dire di avere una conoscenza ottima dell'inglese
    scritto.

    Passando al tuo problema:
    Ti consolo l'ho avuto tale e quale ed è di semplice soluzione ^^
    Al posto di usare un tag html <img> usa il tag asp:image
    a runtime IIS cambierà il path che gli indichi con ~ nel path
    nel quale si trova la tua immagine

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    248
    ti sono molto grato per la dispnibilità, proprio nei giorni scorsi, ho avuto il dubbio su quali comandi e pagine utilizzare.

    Ti spiego, le pagine web che sto realizzando per prednere confidenza col sistema sono semplici e si possono realizzare anche in html, il dubbio è cosa faccio? un mix di pagine html ed aspx oppure faccio tutto in aspx?
    La decisione è stata aspx, così posso imparea la MP e scrivere meno codice ed al tempo stesso studio.

    Lo stesso mi è capitato con gli oggetti. Nelle pagine html uso href per il link ad altr pagine, nella MP ho usato l'oggetto linkButton, ma non ho capito la differenza ed in + non so quale sia il comando (in linkButton) per far comparire il testo di spiegazione quando col mouse ti ci posizioni sopra.
    Quindi per i comandi ancora non so cosa sia meglio fare.

    Provo subito il tuto suggerimento e ti faccio sapere

    ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.