Проблема в том, что когда я сортирую список точек с X и Y, все, кроме одной точки, которая имеет тот же X, что и 4 других точки, но имеет наименьший Y, расположение индекса второе от последнего в списке. Сначала я просто следил за тем, чтобы сортировка выполняла больше одного раздражения, поскольку все точки только перемещали одно пятно и не более того, откуда они начинались в списке. Это мой по сравнению с методом, который используется для сортировки списка:Результат List.Sort() неверен
Public Function CompareTo(ByVal other As Point) As Integer Implements System.IComparable(Of Point).CompareTo
Dim xCompare As Integer = Me.X.CompareTo(other.X)
If xCompare = 0 Then
Return Me.Y.CompareTo(other.Y)
End If
Return xCompare
End Function
Предметы после сортируется
1: 18.750,144.500
2: 19.440,88.642
3 : 21.750,112.925
4: 21.750,134.375
5: 21.750,89.646
6: 21.750,144.500
Как вы можете видеть этот пункт на 5 должен быть перемещен в третий элемент в списке.
by 'если что-то изменилось', вы имеете в виду, что содержимое списка изменилось (как в чем-то добавленном или вставленном)? – Plutonix
Вызов 'Sort()' как только полностью сортирует список. Я не понимаю, почему вы хотите повторно называть 'Sort()'. – itsme86
, вы можете быть уверены, что отсортированы с помощью 'SortedList' –