Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Problemi con datagridview di vb2008
giovedì 27 gennaio 2011 - 11.47
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
Visual Studio 2008
|
SQL Server 2008
nappo
Profilo
| Newbie
8
messaggi | Data Invio:
gio 27 gen 2011 - 11:47
Ciao a tutti! Sto scrivendo il mio primo programma (vb2008)e vi spiego il mio problema.
Ho creato una tabella (db sqlserver2008) nominata DOCUMENTI con 3 colonne(data ,descr, importo) ora vorrei popolare con datagridview le stesse colonne (data desc importo).
Ho usato queste istruzioni
dim n as integer = datagridview.rows.add(n)
datagridview1.rows.item(n).cell().value= data
datagridview1.rows.item(n).cell().value= desc
datagridview1.rows.item(n).cell().value= importo
facendo cosi inserisce solo la prima riga nella dgv
Mentre usando una listbox funziona (leggo tutte le righe richieste)
potreste corregermi l'errore grazie
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
gio 27 gen 2011 - 12:49
>Ciao a tutti! Sto scrivendo il mio primo programma (vb2008)e
>vi spiego il mio problema.
ciao e benvenuto su dotnethell!
>Ho creato una tabella (db sqlserver2008) nominata DOCUMENTI con
>3 colonne(data ,descr, importo) ora vorrei popolare con datagridview
>le stesse colonne (data desc importo).
>Ho usato queste istruzioni
>potreste corregermi l'errore grazie
la tabella la dovresti leggere con ado.net e poi, il risultato (ad esempio un datareader) lo metti direttamente nella proprietà DataSource del tuo gridview..
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
nappo
Profilo
| Newbie
8
messaggi | Data Invio:
gio 27 gen 2011 - 17:13
mi rendo conto di essere stato un pò generico
con datareader in effetti visualizzo tutti i dati caricati nella tabella fin qui ci siamo
ora in un altro form vorrei visualizzare questi dati solo relativi al mese corrente (20 righe)
in breve in un form ho i dati in generale nel secondo solo il mese corrente.
se uso
listbox.item.add("data" & "desc" & "importo") inserisce tutte la 20 righe del mese corrente
se invece uso dgv carica solo la prima riga
vorrei usare dgv è piu' carino da vedere.
spero di essere stato piu' preciso nella descrizione del problema
grazie per la risposta
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
lun 31 gen 2011 - 19:52
>listbox.item.add("data" & "desc" & "importo") inserisce tutte
>la 20 righe del mese corrente
>se invece uso dgv carica solo la prima riga
>vorrei usare dgv è piu' carino da vedere.
>spero di essere stato piu' preciso nella descrizione del problema
il codice che posti nel primo messaggio è all'interno di un ciclo?
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
nappo
Profilo
| Newbie
8
messaggi | Data Invio:
mar 1 feb 2011 - 12:20
il codice è questo
dim y as integer
dim uscite1 as string = "SELECT * FROM Uscite WHERE( Data >= ' " & data1 &" ' and Data ' " & data &" ' ) "
(la where data 1 data2 stringe la select al 01 31 del mese corrente)
dim cmd as SQLCOMMAND = new SQLCOMMAND(uscite1,sqlconn)
dim lguscite as SQLDATAREADER =cmd.EXECUTEREADER
WHILE lguscite.read()
DATAGRIDVIEW.ROWS.ITEM(Y).CELL(0).VALUE= lguscite("Data")
DATAGRIDVIEW.ROWS.ITEM(Y).CELL(1).VALUE= lguscite("Desc")
DATAGRIDVIEW.ROWS.ITEM(Y).CELL(2).VALUE= lguscite("Importo")
y = y + 1
end while
con questo codice il dgv viene popolato solo con l'ultima riga della tabella
mentre con listbox legge correttamente tutte le righe
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
dom 6 feb 2011 - 02:52
Ti sconsiglio tantissimo di concatenare le stringhe in questo modo, perchè sei soggetto ad attacchi di tipo sql injection. Utilizza invece le query parametriche con ado.net.
>con questo codice il dgv viene popolato solo con l'ultima riga della tabella
Questo perchè agisci sul datagrid senza aggiungere righe. Ti consiglio di creare una struttura (che può essere un List Of, oppure un dataset/datatable) e di popolarla con quel ciclo. Solo dopo passa questo oggetto alla proprietà datasource della tua griglia.
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
nappo
Profilo
| Newbie
8
messaggi | Data Invio:
gio 10 feb 2011 - 10:00
grazie per la dritta ho fatto un po fatica ma sono riuscito a risolvere il problema.
pauldomy
Profilo
| Newbie
6
messaggi | Data Invio:
sab 7 mag 2011 - 12:06
puoi usare questo codice :
Dim cnn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\database1.mdb; User Id=admin;Password=;")
Dim da As New OleDbDataAdapter("SELECT * FROM Spese WHERE Data='" & txtDate.Text & "'", cnn)
Dim ds As New DataSet
da.Fill(ds)
DataGridView1.DataSource = ds.Tables(0)
cosi ti inserisce tutti i valori della tabella.
Torna su
Stanze Forum
Elenco Threads
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 !