wpf c#键入时更新值组合框
本文关键字:组合 更新 wpf | 更新日期: 2023-09-27 18:25:43
我目前正在编写一个具有组合框的wpf应用程序。我从DB(使用存储过程)获得combobox的值,但是,如果我将它们放入cbo,我会有大约13000+个值,这会减慢应用程序的速度。
我想要的是一个cbo(用户可编辑),它只显示10个值,当用户键入时,列表会更新。
我对wpf很陌生(几天后,甚至一周后),所以请明确这一点。
thx!!!
一月
请看一下这些描述ComboBox
es:虚拟化的帖子
绑定大型集合带来的WPF ComboBox性能问题
使用UI虚拟化实现更快的控制
热门提示!提高ComboBox 的性能
试着在谷歌上搜索更多的例子。
如果你是新手,我不确定你能理解多复杂的答案,你知道DataBinding吗?
不管怎样,我就是这么做的。
声明您在ComboBox的ViewModel中管理的类型的ObservableCollection(这是在ComboBoxDataContext属性中设置的对象)。当用户键入信息时,它将在该事件的EventHandler上引发TextChanged事件,使用部分字符串从数据库中获取信息,然后获取结果,并将其放入ObservableCollection中。
为了实现这一点,您需要转到ComboBox并在ItemsSource属性上启用DataBinding,如下所示:
ItemsSource={Binding Mode=OneWay, Path=NameOfObservableCollectionProperty}