|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: May 2004
Città: Como (PDN)
Messaggi: 428
|
[ASP.NET] Personalizzare un Datagrid (urgente!)
Ciao, ho una pagina in cui l'utente seleziona dei parametri di ricerca e dev'essere visualizzato un elenco di risultati.
Il problema è che a seconda dell'utente, i campi da visualizzare variano. Ora, io ho creato un DataGrid (DGSegn) che dovrebbe essere appunto generato dalla query. Nel codice VB io mi creo la mia query, a seconda degli utenti, e riempio il datagrid: Dim objConn As New OdbcConnection(CnxDB) objConn.Open() 'inizializzo objCommand... Dim objCommand As New OdbcCommand(SQLSegnalaz, objConn) 'leggo i dati e chiudo la connessione Dim objDataReader As OdbcDataReader objDataReader = objCommand.ExecuteReader(System.Data.CommandBehavior.CloseConnection) 'databind alla datagrid DGSegn.DataSource = objDataReader DGSegn.DataBind() E fin qui nessun problema. Io vorrei mettere una prima colonna con il testo "Dettagli" ed il link ad una pagina "dettagli.aspx?ID=num" dove num sarebbe l'id della segnalazione, che viene restituito dalla query. E vorrei che invece la colonna con questo ID non fosse visibile (non per questioni di riservatezza, ovviamente, ma solo di "estetica") Il problema è che se setto la column(0).visible=false, mi nasconde ovviamente la colonna che dovrebbe contenere il link, se metto column(1).visible=false, mi restituisce errore. Dovrei settare la proprietà autogeneratecolumns del datagrid su false, e generare le colonne manualmente, ma da VB non riesco a capire quale sia la sintassi esatta per permettermi di aggiungere le colonne: NomeDatagrid.Columns.Add... e poi cosa ci metto...? Non posso costruirle direttamente nella parte "html" perchè appunto, a seconda dell'utente la query mi tira fuori campi diversi. Potrei anche fare un "SELECT *" però poi avrei sempre il problema di rendere invisibili alcune colonne.
__________________
Qualcuno qui dentro ritiene di essere l'illuminato, di avere la saggezza e che gli altri siano un branco di poveri idioti. Per questo se non è in grado di argomentare seriamente delle risposte, se non la pensi come lui o se provoca e gli rispondi fugge dal thread e ti mette in ignore list Ultima modifica di Bizkaiko : 17-02-2008 alle 11:18. |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:54.