Buon giorno a tutti. Mi rendo conto che l'argomento è trattato in lungo ed in largo ma per quanto siano giorni che dedico ore a leggere ogni discussione in merito... non ne vengo a capo. Forse è una sciocchezza, ma non ci arrivo!
Allora... VS 2017, form per windows.
Ho una DGV formata da 2 colonne, creata nel seguente modo nel formload:
DGV1.ColumnCount = 2
DGV1.RowHeadersVisible = False
DGV1.Columns(0).Name = "Indice"
DGV1.Columns(1).Name = "Valore"
DGV1.Columns(1).SortMode = DataGridViewColumnSortMode.Automatic
DGV1.Columns(1).ValueType = Type.GetType("System.decimal")


La colonna "Indice" è una stinga, "Valore" è un double.
L'inserimento delle righe avviene così
DGV1.Rows.Add(New String() {riga, quotazione})
dove riga è dichiarato string, quotazione è un double

Quando esegue l'ordinamento
DGV1.Sort(DGV1.Columns(1), direzione.Descending)
"Direzione" è tipo "Listsortdirection" mi ritrovo che i valori negativi sono comunque in mezzo ai positivi.
Del tipo:
3,-2,1,0.5
anzichè
3,1,0,5,-2

Non riesco in nessun modo a fargli cabiare idea.
Cosa sbaglio?

Grazie mille a chi mi aiuterà.