Aiuto sto diventando pazzo per questo problemanessuno che è incappato in questa cosa??!!
![]()
ho fatto un'ultima prova e dopo questa non so più che fare!
ho creato da zero un nuovo progetto, semplicemente inserito un form e una datagridview con due colonne testo e avviato il progetto ho popolato manualmente la prima colonna con semplici numeri a caso 1,4,3,7,... la seconda colonna con numeri in ordine crescente da 10 in poi 10,11,12...(per testare il comportamento naturale di ordinamento)
allora clicco per ordinare la prima colonna e tutto si ordina secondo i valori della prima colonna, clicco per ordinare la seconda colonna è come normalmnete accade ordina tutto secondo i valori della seconda colonna.
allora scrivo il codice nell'evento SortCompare, così quando si va a odinare la seconda colonna, riodina tutto secondo i valori contenuti nella prima colonna:
bhe non cambia nullaaaaaaa, esattamente come se il codice immesso non serve a nulla....codice:Select Case e.Column.Name Case "Column2" Dim Val1 As Integer = CType(.Rows(e.RowIndex1).Cells("Column1").Value, Integer) Dim Val2 As Integer = CType(.Rows(e.RowIndex2).Cells("Column1").Value, Integer) e.SortResult = Val1 - Val2 'scrivo l'esito della comparazione nella finestra di debug Debug.WriteLine(Val1 & vbTab & Val2 & vbTab & "e.SortResult= " & e.SortResult) End Select![]()
![]()
![]()
se vado per ordinare la seconda colonna e la ordina sempre secondo valori della seconda colonna!!!!!!!!!!!!
eppure dal debug (attraverso la riga di codice che ho inserito per prova) l'evento viene eseguito, addirittutta e.SortResult assume i giusti valori a ogni comparazione..
questo trovo scritto nella finestra di debug:
codice:9 8 e.SortResult= 1 9 1 e.SortResult= 8 8 1 e.SortResult= 7 7 8 e.SortResult= -1 3 8 e.SortResult= -5 4 8 e.SortResult= -4 8 5 e.SortResult= 3 8 6 e.SortResult= 2 8 2 e.SortResult= 6 9 7 e.SortResult= 2 9 4 e.SortResult= 5 7 4 e.SortResult= 3 7 3 e.SortResult= 4 3 4 e.SortResult= -1 2 6 e.SortResult= -4 2 1 e.SortResult= 1 6 1 e.SortResult= 5 6 5 e.SortResult= 1 5 1 e.SortResult= 4![]()
![]()
![]()
![]()

nessuno che è incappato in questa cosa??!!
Rispondi quotando