我想在您輸入的功能(如一個在默認的電子郵件應用程序搜索)實現搜索 - 我有一個列表框有說50個項目 - 結合到具有字符串字段一個類的對象的每個項目...我想搜索和顯示其在搜索框中的文本在其字符串領域的一個項目 - 本作中的文本框的用戶密鑰......試了幾個辦法 - >如何在輸入時提高搜索的性能?
1 >>使用一個CollectionViewSource
- 綁定一個CollectionViewSource從所有項目的DB
- 綁定列表框到CollectionViewSource
- 設置CollectionViewSource的篩選器屬性 - 到其功能,搜尋SEARCH_TERM_EXAMPLES的T在搜索框中的項目和設置e.Accepted - 在每個關鍵事件
- 過濾工作正常,但其緩慢的50項:( - 猜測過濾器採取每個項目和檢查是否設置e.Accepted屬性到負荷,但真正
....一個DB調用似乎是一個大量的處理決定由CollectionViewSource
2 >>過濾@ DB水平
在文件管理器,以DISPLY哪個元素 - 上KEYUP - 發送在搜索框中的視圖模型的文本,其中一個函數返回一個對象的ObservableCollection其中有搜索字符串
- 的ObservableCollection綁定到列表框
....沒有太多的處理@頂層,但每個按鍵上有多個數據庫調用 - 仍然很慢,但只比方法一更快點
有沒有其他方法可以推薦?或者有什麼建議可以進一步優化上述方法? - 任何調整,以使搜索順利運作?
首次進入移動開發:)提前...感謝名單:)
在這裏你可以看看樣品 http://stackoverflow.com/questions/5782585/filtering-an-observablecollection – JSJ
您好我已經做到了。請參見方法1 ...當時想知道如果有人有任何想法來提高性能...這可以與一些項目確定,但明顯緩慢與50項... – chancyjohn
然後我認爲你應該去只讀項目。這將無法提高性能。 – JSJ