VB.net Sort Arraylist By Objects Name
arraylist, sorting, vb.net
Solution
You have to create an `IComparer` and pass it to the `Sort` method:
Class TextBoxComparer
Implements IComparer
Public Function Compare(x As Object, y As Object) As Integer Implements IComparer.Compare
Return String.Compare(x.Name, y.Name)
End Function
End Class
...
ObjList.Sort(New TextBoxComparer())
Or, if you can switch to `List(Of TextBox)`, an anonymous function (that matches the Comparison(Of T) delegate) will also do:
Dim ObjList As New List(Of TextBox)
...
ObjList.Sort(Function(x, y) String.Compare(x.Name, y.Name))
Problem
Trying to sort a arraylist by Objects name ``` Dim ObjList as new arraylist Dim TextBox1 as new textbox Textbox1.name = "CCC" Dim TextBox2 as new textbox Textbox1.name = "AAA" Dim TextBox3 as new textbox Textbox1.name = "BBB" ObjList.add(TextBox1) ObjList.add(TextBox2) ObjList.add(TextBox3) ObjList.sort() ``` Sort creates a error. How would I sort the TextBoxs by Name so it looks like AAA BBB CCC Thank you