Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim LS As New List(Of String)
Dim Counter As Integer = 0I
Dim CurrLength, CurrIndex, TopIndex As Integer
For Counter1 As Integer = ListBox1.SelectedIndices.Count - 1I To 0I Step -1I
LS.Add(ListBox1.Items(ListBox1.SelectedIndices(Counter1)))
ListBox1.Items.RemoveAt(ListBox1.SelectedIndices(Counter1))
Next Counter1
TopIndex = LS.Count
Do While Counter < TopIndex
CurrLength = 0I
CurrIndex = 0I
For Counter1 As Integer = 0I To LS.Count - 1I
If LS(Counter1).Length > CurrLength Then
CurrLength = LS(Counter1).Length
CurrIndex = Counter1
End If
Next Counter1
ListBox1.Items.Insert(0I, LS(CurrIndex))
LS.RemoveAt(CurrIndex)
Counter += 1I
Loop
End Sub