I have a list (i.e. Dim nList as new List(of className)
). Each class has a property named zIndex
(i.e. className.zIndex
). Is it possible
Assuming you have LINQ at your disposal:
Sub Main()
Dim list = New List(Of Person)()
'Pretend the list has stuff in it
Dim sorted = list.OrderBy(Function(x) x.zIndex)
End Sub
Public Class Person
Public Property zIndex As Integer
End Class
Or if LINQ isn't your thing:
Dim list = New List(Of Person)()
list.Sort(Function(x, y) x.zIndex.CompareTo(y.zIndex))
'Will sort list in place
LINQ offers more flexibility; such as being able to use ThenBy
if you want to order by more than one thing. It also makes for a slightly cleaner syntax.