尝试按字母顺序对数组进行排序,但第一项未进行排序

时间:2013-01-28 20:56:18

标签: vb.net

My.Resources.MyList是一个文本文件,其中包含一个项目列表,每个项目都在一个单独的行上。例如......

Green
Red
Black
Orange
etc.

我正在尝试将该列表排序为数组,然后按字母顺序将结果输出到列表框中。

这是我的代码......

Dim MyListArray() As String = My.Resources.MyList.Split(Environment.NewLine)
Array.Sort(MyListArray)
MyListBox.DataSource = MyListArray

但是当我这样做时,列表中的第一个项目不会被排序(由于某种原因,它会在列表的末尾结束)。换句话说,最终结果应该看起来像......

Black
Green
Orange
Red

但它看起来像......

Black 
Orange
Red
Green

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

确保您的单词不以空字符开头/结尾。

MyListArray = MyListArray.Select(Function(a) a.Trim()).ToArray()

答案 1 :(得分:2)

默认情况下,listbox的排序属性为false。所以试试这个:

Listbox.Sorted = True

Listbox.TabIndex = 1

参考:http://msdn.microsoft.com/en-us/library/system.windows.forms.listbox.sort.aspx?cs-save-lang=1&cs-lang=vb#code-snippet-1