2013-11-28 44 views
0

我只是想知道是否有一種方法來排序列表框中的項目,例如按字母順序降序,升序?洙到目前爲止,這是我的代碼基本上將文件添加到列表框中:如何對列表框項目進行排序?

Dim Storage As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForApplication() 
    Dim directory As String = "./MyNote/SavedNotes/*.*" 
    Dim filenames As String() = Storage.GetFileNames(directory) 
    Dim dataSource As New List(Of SampleData)() 
    For Each filename As String In filenames 
     Dim ISF As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForApplication() 
     Dim FS As IsolatedStorageFileStream = ISF.OpenFile("MyNote/SavedNotes/" & filename, FileMode.Open, FileAccess.Read) 
     Using SR As New StreamReader(FS) 
      Dim FTime As String = GetRelativeTime(Storage.GetCreationTime("MyNote/SavedNotes/" & filename).ToString) 
      Dim DATESS As String = SR.ReadLine 
      Dim ReadName As String = SR.ReadLine 
      dataSource.Add(New SampleData() With {.FileNameX = filename, .Description = ReadName, .FileTime = FTime}) 
     End Using 
    Next 
    SavedNotesList.ItemsSource = dataSource 

我只是想知道我怎麼可以添加的項按字母順序排序上升?有人能幫我嗎?我聽說需要一個可觀察的集合或某種類型的東西?

回答

1

您可以通過

Dim query As IEnumerable(Of SampleData) = _ 
      datasource.OrderBy(Function(SampleData) s.FileNameX) 
+0

嘿感謝,很容易做,但什麼是「寵物」?我應該替換你提供給我的代碼:'SavedNotesList.ItemsSource = dataSource'或者它是一個單獨的選項? –

+0

@AhmedCader是的 – techloverr

+0

好吧,所以我設法稍微更新了一下代碼,使它成爲:'IEnumerable(Of SampleData)= dataSource.OrderBy(Function(SampleData)SampleData.FileNameX)''Dim it query as ascending或降序?我有點困惑 –

相關問題