1
我有一個listView顯示一堆圖。我可以使用不同的標準對這個listview進行排序。不幸的是,當我執行排序時,操作花費了比預期更多的時間,並且我意識到排序被觸發後,所有圖形都被重新創建。有沒有辦法對列表視圖進行排序而不必重新創建其所有元素?
我的數據源是一個可觀察的集合,視圖由一個圖表控件和一些標籤組成。我通過使用視圖排序描述來對視圖執行排序,因此排序應該在視圖上執行,而不是在數據源上執行,對吧?
lstView.Items.SortDescriptions.Clear();
lstView.Items.SortDescriptions.Add(new SortDescription(_field, _lstViewDirection));
我一直在尋找周圍,它似乎是某種觸發刷新其去除控制的UI元素,並重新創建它們...但是這似乎沒有必要給定的我只是訂貨的UI元素的位置。
有沒有辦法避免這種刷新行爲,只重新排序UI元素的位置?
我試圖UI虛擬化,即使它使aplication多一點反應仍然再現集合中的所有項目。此外,我閱讀了關於數據虛擬化的所有文章,在排序的情況下,他們仍然在視圖上使用SortDescription,它將重新初始化我的所有圖表......必須有一種方法來改變沒有重新創建所有元素的集合...不是? – Luciano