我想在您输入的功能(如一个在默认的电子邮件应用程序搜索)实现搜索 - 我有一个列表框有说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