Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15

Discussione: Visible true e false

  1. #1
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080

    Visible true e false

    Voglio provare a fare una cosa del genere:
    Ho un data base con 3 tabelle: persone (nome e cognome), cani (nome), gatti (nome)

    Nella mia pagina ci saranno 3 linkbutton (persone, cani e gatti) e al click del primo visualizzo il datagrid con nomi e cognomi delle persone, al click del sencondo visualizzo il datagrid con i nomi dei cani e al click del terzo visualizzo il datagrid con i nomi dei gatti.

    Va bene se io inserisco nella pagina i 3 link button e i 3 datagrid, e al click di un pulsante rendo visibile SOLO il datagrid relativo.
    Funziona se uso miodatagrid1.visible=true?

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Ma scusa, hai provato?
    Pietro

  3. #3
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080
    sto provando, ma volevo sapere se è la strada giusta o ci sono metodi migliori.

  4. #4
    Utente di HTML.it L'avatar di Legnetto
    Registrato dal
    May 2002
    Messaggi
    1,419
    Tieni presente che se visualizzi un controllo e l'attributo enableviewstate non è settato a false quando lo fai scomparire la viewstate rimane e, nel caso di un datagrid è veramente enorme.
    Quando lo provi in locale va tutto bene, ma poi se a quella pagina deve accedere un'utente con un modem sono guai.
    Ti conviene utilizzare un tag <iframe>(quindi in un'altra pagina) e mettere un valore dinamico nella src="pagina.aspx?query=<%# variabile%>", se clicchi sul pulsante gatti, la variabile presa dalla querystring ti fa accedere alla query giusta e popoli di conseguenza il datagrid(oppure uno dei tre).
    Ciao
    Legnetto

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da Legnetto
    Tieni presente che se visualizzi un controllo e l'attributo enableviewstate non è settato a false quando lo fai scomparire la viewstate rimane e, nel caso di un datagrid è veramente enorme.
    Quando lo provi in locale va tutto bene, ma poi se a quella pagina deve accedere un'utente con un modem sono guai.
    Ti conviene utilizzare un tag <iframe>(quindi in un'altra pagina) e mettere un valore dinamico nella src="pagina.aspx?query=<%# variabile%>", se clicchi sul pulsante gatti, la variabile presa dalla querystring ti fa accedere alla query giusta e popoli di conseguenza il datagrid(oppure uno dei tre).
    Ciao
    Legnetto
    Per Legnetto

    Non è che abbia capito, ma non ti sembra di esagerare con <iframe (in fondo si tratta solo di un problema di cani e gatti.
    Credo che la soluzione dell'amico Sonikag sia valida. Infatti, secondo il link premuto, carico i dati nella tabella persone, cani o gatti, rendo visible=true la tabella che interessa, e rendo visible=false le restanti.

    Pietro

  6. #6
    Io metterei un controllo nella dichiarazione delle datagrid nella pagina aspx del tipo
    codice:
    Visible=<%# CheckCaniSource %>
    la funzione pubblica nel codebehind di nome CheckSource mi restituisce true se la dataview (o datatable) che fa da datasource alla datagrid e' piena (1 o + record) altrimenti restituisce false.
    La dataview la riempio solo quando l'utente mi clicca su una persona o su un cane o su un gatto.
    Saluti a tutti
    Riccardo

  7. #7
    Utente di HTML.it L'avatar di Legnetto
    Registrato dal
    May 2002
    Messaggi
    1,419
    Il problema che dicevo io è che se visualizzi il datagrid "cani" e poi lo fai scomparire, anche quando visualizzi il datagrid "gatti" la viewstate è ancora presente...
    Ciao
    Legnetto

  8. #8
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da Legnetto
    Il problema che dicevo io è che se visualizzi il datagrid "cani" e poi lo fai scomparire, anche quando visualizzi il datagrid "gatti" la viewstate è ancora presente...
    Ciao
    Legnetto
    credo che questo sia vero se fai scomparire la tabella da client, no da server.
    E poi, quanti cani e quanti gatti ci saranno? boh!
    Pietro

  9. #9
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080
    Pochi cani, pochi gatti e poche persone tranquilli
    Il mio voleva solo essere un esercizio, ma mi interessavano appunto i vostri pareri perchè il mio esercizio serviva appunto a sperimentare l'asp.net quando arriveranno cose più serie...

    C'è una soluzione che eviti l'iframe se avessi tanti dati? La migliore sarebbe impaginare 3 differenti pagine?

    tnx

  10. #10
    se avessi tanti dati la soluzione migliore sarebbe quella che ti hanno dato all'inizio, ovvero disabilitare la viewstate con l'atributo enableviewstate.
    @Pietro: la viewstate di un controllo nascosto viene comunque inviata insieme alla pagina, l'unica cosa è che non viene fatto il renderingo dell'html

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 © 2026 vBulletin Solutions, Inc. All rights reserved.