Problemi con la InsertAt

mercoledì 24 agosto 2005 - 11.22

gianp Profilo | Junior Member

Ciao a tutti,
io vorrei inserire una nuova DataRow in un posizione precisa di una DataTable facendo così:
Table.Rows.InsertAt(row,posizione)
Il problema è che la riga me la posiziona sempre in coda, indipendentemente dal valore di posizione.
Qualcuna saprebbe aiutarmi?

Cteniza Profilo | Guru

Mi piacerebbe sapere a che cavolo ti serve scegliere tu la posizione assoluta della riga, che benefici ne puoi trarre?
Credo che l'unico effetto sia il cambiamento dell'ordine naturale delle righe es:
for (int x = 0; x < table.Rows.Count; x++) restituisce le righe nell'ordine in cui sono state create / aggiunte.
Personalmente non userei MAI questo per avere le righe ordinate ma userei una dataview per fare l'ordinamento.
In parole povere lo sa solo Dio come sono state aggiunte le righe alla datatable.


gianp Profilo | Junior Member

Ti assicuro che c'è un motivo per voler inserire una riga in una posizione precisa:
I uso il DataTable per disegnare dei grafici e la posizione degli oggetti nel grafico dipende dalla posizione delle righe nella tavola.
Comunque ti ringrazio per la tuo "auito".

Cteniza Profilo | Guru

A questo punto cosa ti costa assegnare una chiave a ciascun elemento che inserisci e poi fare un'estrazione ordinata?



gianp Profilo | Junior Member

Infatti così ho fatto.
Ma volevo evitare di aggiungere un altro campo al DataTable, visto che c'era la possibilatà di farlo via software.
Comunque ho fatto un pò di ricerche su internet anche altri hanno avuto problemi analoghi con la InsertAt ma non ho trovato soluzioni, (forse è un bug di DotNet).
Grazie.

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-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5