Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    Creare un componente a runtime

    Salve ragazzi,

    devo creare ue menu a runtime. Dovrei utilizzare il RadMenu che tanto è simile ad normale Menu che ASP.NET offre.

    Su internet trovo solo codici per creare gli Items a runtime, a me servirebbe creare proprio il compontente.

    Non riesco neanche a creare una semplice TextBox! Dov'è che sbalgio? cosa dimentico?

    Ecco un esempio di ciò che faccio:

    codice:
        protected void Page_PreInit(object sender, EventArgs e)
        {
            RadTextBox a = new RadTextBox();
            a.Text = "ciao";
            a.ID = "myTexbx";
            Page.Controls.Add(a);
        }
    Non visualizza niente!!!

    helpp
    Response.Write("Tonyhhkx Programmer32");

  2. #2
    piccola parentesi: perchè se scrivo:

    codice:
    Repsonde.Write("<div> ciao </div>");
    mi funziona e mi visualizza tutti i compontneti html ma se scivo qualcosa tipo:

    Repsonde.Write("<asp:button ... ... ...</asp>");[/CODE] non esce nienteee'???
    Response.Write("Tonyhhkx Programmer32");

  3. #3
    ciao,

    devi considerare che il response.write, scrive sul "Response", ovvero sullo stream che stai inviando al browser.
    Capisci che un tag asp del tipo "<asp:TextBox ...." inviato al browser non server proprio a niente.

    Dal codice che hai scritto tu, sembrerebbe corretta la creazione del componente; solo l'inserimento nella pagina potrebbe non essere corretto.
    fai così: metti nella pagina aspx un Panel, e poi il controllo rad lo aggiungi al suo interno.

    fammi sapere

  4. #4
    Originariamente inviato da Gluck74
    ciao,

    devi considerare che il response.write, scrive sul "Response", ovvero sullo stream che stai inviando al browser.
    Capisci che un tag asp del tipo "<asp:TextBox ...." inviato al browser non server proprio a niente.

    Dal codice che hai scritto tu, sembrerebbe corretta la creazione del componente; solo l'inserimento nella pagina potrebbe non essere corretto.
    fai così: metti nella pagina aspx un Panel, e poi il controllo rad lo aggiungi al suo interno.

    fammi sapere
    esattoo!!

    Con il panel funziona! Strano che con page.controls.add è invisibile.
    Grazie mille Gluck74!
    Response.Write("Tonyhhkx Programmer32");

  5. #5
    no, non è proprio così strano.

    se tu fai la procedura nel Page_load, in verità la pagina html non esiste ancora.
    Facendo un controls.add, è vero che aggiungi un istanza di un controllo nella collection dell'istanza della Page, ma senza una posizione;
    quindi al momento del render del codice HTML, questo controllo o non viene proprio preso in cosiderazione, o chissà dove va a finire (questo non te lo so dire)
    Quello che so di certo è che deve avere un contenitore definito nella parte aspx.
    Potresti provare ad usare la form come contenitore, visto che ha la proprietà runat=server

    ciao

  6. #6
    Originariamente inviato da Gluck74
    no, non è proprio così strano.

    se tu fai la procedura nel Page_load, in verità la pagina html non esiste ancora.
    Facendo un controls.add, è vero che aggiungi un istanza di un controllo nella collection dell'istanza della Page, ma senza una posizione;
    quindi al momento del render del codice HTML, questo controllo o non viene proprio preso in cosiderazione, o chissà dove va a finire (questo non te lo so dire)
    Quello che so di certo è che deve avere un contenitore definito nella parte aspx.
    Potresti provare ad usare la form come contenitore, visto che ha la proprietà runat=server

    ciao
    ecco perchè

    Ne approfitto per spiegarti cosa dovrei fare,
    nella mia master page ho un

    <asp:ContentPlaceHolder id="SINISTRA" runat="server">

    All'interno metto un

    <%
    Response.Write(........);
    %>

    nel write vado a leggere tutto il codice html presente nel database per la visualizzazione di un immagine.
    Quindi mi stamperà <img scr.... .... ../> <img src... .... . /> e cosi via.
    Grazie ad un mio pannello imposto le posizioni di chi va prima o dopo.

    Il fatto è che il menu non lo posso creare dentro il write
    Quindi deve già esserci nella master page. Anche se lo creo ora a runtime dovrò sempre metterlo nel pannello che ci deve sempre stare a priori!
    Se il pannelo o il menu stanno già, il write lo posso scrivere prima o dopo il pannello quindi non ho la libertà di scegliere la posizione del menu!!
    Se ho il pannello <aspanel.... e poi il write(immagine) mi stamperà sempre prima il pannello con il menu e poi l'immagine.

    Come potrei fare per creare un piccolo sistema per gestire la posizione del pannello/menu?
    Vorrei poter scegliere se metterlo prima o dopo il write, o magari all'interno

    Spero hai capito cosa intendo
    Response.Write("Tonyhhkx Programmer32");

  7. #7
    sinceramente non ho proprio capito.

    comunque io non userei la response.write.

    come lo leggi il codice html dal database?

  8. #8
    Originariamente inviato da Gluck74
    sinceramente non ho proprio capito.

    comunque io non userei la response.write.

    come lo leggi il codice html dal database?
    nel database per esempio ho la tabella immagini.
    Al suo interno ho i campi id e html
    Nei campi MEMO html sono contentui i codici html per la visualizzazione di un immagine ovver [img]---[/img]

    Facendo la response.write(prendituttileimmagini()); mi stampa tutti i campi html concatenati e alla fine vedo tutte le immagini belle e concatenate.
    Se al posto di un immagine centrale metto un link vedrò le immagini il link e poi l'immagine e cosi via in base alla posizione dei record nel database.

    Io vorrei fare in modo che mi stampi anche il menu, perhcè ho la necessita di mettere il menu dove voglio, prima o dopo le immagini almeno. Come potrei realizzare una cosa simile?
    Response.Write("Tonyhhkx Programmer32");

  9. #9
    se non hai ancora capito ti capisco sono una frana a spiegare le cose
    Response.Write("Tonyhhkx Programmer32");

  10. #10

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.