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
.NET Framework
Eliminare un Record da una DataGrid
giovedì 15 giugno 2006 - 16.00
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
nioMatrix
Profilo
| Junior Member
83
messaggi | Data Invio:
gio 15 giu 2006 - 16:00
Salve a tutti
Ho utilizzato in una piccola applicazione il seguente codice per eliminare un record da una
datagrid, ma non ho capito bene come funziona.
Dim cm As CurrencyManager = CType(Me.BindingContext(DataGrid1.DataSource, DataGrid1.DataMember), CurrencyManager)
Dim dv As DataView = CType(cm.List, DataView)
Dim dr As DataRow
dr = dv.Item(cm.Position).Row
dr.Delete();
Potete spiegarmelo, oppure potete darmi un link di una pagina che tratta quast'argomento?
(mi servirebbe soprattutto capire cosa è e a cosa serve il CurrencyManager)
Grazie
PS: Scusate ho sbagliato sezione
blood
Profilo
| Senior Member
291
messaggi | Data Invio:
gio 15 giu 2006 - 16:32
>Salve a tutti
>
>Ho utilizzato in una piccola applicazione il seguente codice
>per eliminare un record da una
>datagrid, ma non ho capito bene come funziona.
>
>Dim cm As CurrencyManager = CType(Me.BindingContext(DataGrid1.DataSource,
>DataGrid1.DataMember), CurrencyManager)
>Dim dv As DataView = CType(cm.List, DataView)
>Dim dr As DataRow
>dr = dv.Item(cm.Position).Row
>dr.Delete();
>
>Potete spiegarmelo, oppure potete darmi un link di una pagina
>che tratta quast'argomento?
>(mi servirebbe soprattutto capire cosa è e a cosa serve il CurrencyManager)
>
>Grazie
potresti usare direttamente la funzione cm.RemoveAt() del currency manager:
Dim cm As CurrencyManager = Me.BindingContext(dataset, "TABELLA")
cm.RemoveAt(Me.datagrid.CurrentRowIndex)
Il currencyManager ti permette di gestire tutti i legami tra una base dati sorgente ed un oggetto contenitore (in questo caso l'eliminazione di una riga..)
---------------
Piscopo Paolo
:: wD @ IRCnet :: .NET wannabe 8-)
nioMatrix
Profilo
| Junior Member
83
messaggi | Data Invio:
ven 16 giu 2006 - 08:52
Ma se provo ad effettuare l'ordinamento eulla datagrid, viene eliminato sempre il record voluto?
blood
Profilo
| Senior Member
291
messaggi | Data Invio:
ven 16 giu 2006 - 10:08
>Ma se provo ad effettuare l'ordinamento eulla datagrid, viene
>eliminato sempre il record voluto?
??? cioè?? cmq con la funzione cm.RevoveAt(INDICE as Integer) viene eliminata la riga avente quell'indice
---------------
Piscopo Paolo
:: wD @ IRCnet :: .NET wannabe 8-)
nioMatrix
Profilo
| Junior Member
83
messaggi | Data Invio:
ven 16 giu 2006 - 10:20
Se cambio l'ordine delle righe visualizzate dal DataGrid, la riga 1 del DataGrid non sarà più uguale alla riga 1 del recordset, quindi rischio di eliminare una riga nn voluta.
Spero di essere stato chiaro, in quanto hoi le idee un pò contortre su questo argomento
PS: Sto continuando la discussione quì:
http://www.dotnethell.it/forum/messages.aspx?ThreadID=8490
blood
Profilo
| Senior Member
291
messaggi | Data Invio:
ven 16 giu 2006 - 10:50
>Se cambio l'ordine delle righe visualizzate dal DataGrid, la
>riga 1 del DataGrid non sarà più uguale alla riga 1 del recordset,
>quindi rischio di eliminare una riga nn voluta.
>
>Spero di essere stato chiaro, in quanto hoi le idee un pò contortre
>su questo argomento
>
>PS: Sto continuando la discussione quì:
>
>
http://www.dotnethell.it/forum/messages.aspx?ThreadID=8490
ti ho gia detto che il currency manager opera SOLTANTO sull'oggetto contenitore e non sul Dataset o i dati sul db fisico se prima non vengono aggiornati rispetto all'oggetto.
Comunque sia è ovvio che se hai i dati su una griglia, ordini la griglia, il currency manager che gestirà la griglia sarà aggiornato...
---------------
Piscopo Paolo
:: wD @ IRCnet :: .NET wannabe 8-)
nioMatrix
Profilo
| Junior Member
83
messaggi | Data Invio:
ven 16 giu 2006 - 11:39
Dim dRow As DataRow
Dim cm As CurrencyManager = Me.BindingContext(DataGrid.DataSource, DataGrid.DataMember)
Dim dv As DataView = cm.List()
dRow = dv(cm.Position).Row
dRow.Delete()
Ma in questo codice non faccio riferimento alla griglia (DataGrid), quindi come fa il currency manager ad avere lo stesso ordinamento della DataGrid?
PS: Se neache stavolta sono riuscito ad esprimere in modo chiaro il mio problema ci rinuncio
Ciao e Grazie
blood
Profilo
| Senior Member
291
messaggi | Data Invio:
ven 16 giu 2006 - 12:20
ti ho risposto di là continuiamo di là
---------------
Piscopo Paolo
:: wD @ IRCnet :: .NET wannabe 8-)
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 !