GridView

domenica 16 settembre 2007 - 14.27

gae58 Profilo | Senior Member

salve,

ho una gridView con 3 colonne, ma solo l aprima è visibile.
Come faccio ad avere il valore di una delle 2 colonne non visibili?.
Questa sintassi funziona solo con le colonne visibili:
gridView.SelectedRow.Cells[2].Text;

grazie
Gaetano

freeteo Profilo | Guru

ciao,
secondo me devi lavorare sulla sorgente dati, e prenderti il valore da li, non lavorare con le celle della gridview, perche' alla fin fine la gridview come tutti i componenti grafici per web/win32 etc.. sono "visualizzazioni di un dato".
Giustamente la visualizzazione potrebbe evitare qualcosa, magari di poca importanza per l'utente, ma il dato vero e proprio su cui è "bindato" è invece completo di tutte le informazioni.

In poche parole, ti conviene andare a prenderti la riga "n" dal tuo datasource (magari datatable o collection) dove "n" è il "SelectedIndex" della griglia...
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

gae58 Profilo | Senior Member

ciao,

ti ringrazio della risposta e della spiegazione.

Come hai detto tu la grid e gli altri oggetti sono soltanto una visualizzazione, però mi servirebbe sapere un'altra cosa (scusa se non sarò preciso nella richiesta, ma sono all'inizio di tutto e vorrei capire bene com'è strutturato il linguaggio), siccome il collegamento alla tabella (anche se scollegato) già ce l'ho con l'SqlDataSource, non sarebbe possibile collegare l'SqlDataSource al DT o alla collectione (che non so cosa siano e come si usano) ed evitare così una nuova query?

grazie


Gaetano

freeteo Profilo | Guru

ciao,
quello che ti fa fare un sqldatasource non è altro che velocizzarti lo sviluppo, facendoti lui tutto il codice di connessione al db, query e riempimento di una struttura dati (tipicamente DataView) subito pronta all'uso (bindarlo a qualche componente come la griglia ad esempio).

Pero' alla fin fine è cmq una fonte dati, richiamabile anceh da codice, nel caso tuo potresti parcheggiarti questa vista su una variabile per poi andare a controllare i valori dove ti interessa:

DataView dati = SqlDataSource1.Select(new DataSourceSelectArguments()) as DataView;

e poi lavorare controllando i valori di quella variabile "dati".
A questo punto hai la separazione tra visualizzazione e sorgente dati...

ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo
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 !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5