大家好,我是季劼,今天我在寫ListView排列的時候,研究了一下,覺得這個可以簡單地分享一下,讓大家快速地學會,那就開始吧!
首先,
就拿我的例子來給大家看好了
我需要的就是根據ID排列我的ListViewItems
每個新輸入進來的廠商都有自己決定的ID
所以我需要每次新增都再一次排列!
那我就要使用到ListView.Sort()這個function
但是我發現使用了完全沒反應!! 為甚麼呢?
因為他需要指定ListView.ListViewItemSorter
也就是我們需要新創一個class!!
所以我在我的class中創建了一個private class
因為我只有要在這裡比較,在其他class中就不用看到這個class了!
並將它繼承System.Collections.IComparer 介面!
實作他! 在這裡就可以根據我需要比較的東西任意地變更比較方式!
例如: 我可以根據名字的長度或根據字母大小回傳數值
如果回傳大於1的數字 -> 表示x > y
回傳小於1表示x<=y
我這邊是要比較ID 所以是在SubItems[0]的地方
最後的最後就可以排列了!!
新增完新的物件後
賦予我創建的Comparer
呼叫Sort() Function
完成!!
文章標籤
全站熱搜