Lettura del contenuto delle celle di un datagridview: Framework 2.0

martedì 04 novembre 2008 - 10.57

Sig. Travis Profilo | Junior Member

Buongiorno ragazzi, vorrei un aiutino per capire come impostare il codice per la lettura delle celle (colonne) di un datagridview relativamente ad una riga selezionata dall'utente.

Es. L'utente ha selezionato la quinta riga del datagridview; come faccio a catturare il contenuto della prima, seconda e quarta colonna della riga?

Grazie e buona giornata,
Ciao\G

Teech Profilo | Expert

E' lo stesso principio che usi per le righe: anche le celle sono una collection. Puoi usare un codice del tipo (in VB):
For Each r As Row in DataGriView.SelectedRows Dim primariga as String = r.Cells(0).Tostring 'Prima riga Dim secondariga as String = r.Cells(1).Tostring 'Seconda riga Dim quintariga as String = r.Cells(4).Tostring 'Quinta riga Next

Un altro metodo (che utilizzo più spesso) è l'utilizzo del BindingSource. Avendo una Collection di classi puoi attribuire la collection stessa come Datasource del BindingSource e successivamente attribuire il BindingSource come DataSource del DataGridView.
In questo modo puoi lavorare direttamente sull'oggetto corrente del BindingSource ed utilizzare le proprietà dell'oggetto. Sembra più complesso detto così ma alla fine risulta più semplice.
Per maggiore chiarezza ti posso indicare questo articolo: http://community.visual-basic.it/alessandro/archive/2008/03/15/22281.aspx
--------------
Maurizio Brini
--------------
Nessuna impresa è mai stata compiuta da un uomo ragionevole

Sig. Travis Profilo | Junior Member

Ciao, una curiosità:

il datagridview lo popolo leggendo un file excel utilizzando un dataadapter ed un datatable; esiste un metodo per risalire ed utilizzare i dati già presenti sul datatable o sul dataadapter?


Grazie ancora,
Ciao\G

Teech Profilo | Expert

Spero di aver capito la domanda e vado a memoria, ma prova una cosa del tipo:
tuoDataGridView.DataSource=tuoDataTable
oppure
Dim bs As New BindingSource bs.DataSource= tuoDataTable tuoDataGridView.DataSource=bs
Lascia la Proprietà del DataGridView.AutoGenerateColumns=True e il DataGridView si popolerà automaticamente.

--------------
Maurizio Brini
--------------
Nessuna impresa è mai stata compiuta da un uomo ragionevole
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