wpf c#键入时更新值组合框

本文关键字:组合 更新 wpf | 更新日期: 2023-09-27 18:25:43

我目前正在编写一个具有组合框的wpf应用程序。我从DB(使用存储过程)获得combobox的值,但是,如果我将它们放入cbo,我会有大约13000+个值,这会减慢应用程序的速度。

我想要的是一个cbo(用户可编辑),它只显示10个值,当用户键入时,列表会更新。

我对wpf很陌生(几天后,甚至一周后),所以请明确这一点。

thx!!!

一月

wpf c#键入时更新值组合框

请看一下这些描述ComboBox es:虚拟化的帖子

绑定大型集合带来的WPF ComboBox性能问题

使用UI虚拟化实现更快的控制

热门提示!提高ComboBox 的性能

试着在谷歌上搜索更多的例子。

如果你是新手,我不确定你能理解多复杂的答案,你知道DataBinding吗?

不管怎样,我就是这么做的。

声明您在ComboBox的ViewModel中管理的类型的ObservableCollection(这是在ComboBoxDataContext属性中设置的对象)。当用户键入信息时,它将在该事件的EventHandler上引发TextChanged事件,使用部分字符串从数据库中获取信息,然后获取结果,并将其放入ObservableCollection中。

为了实现这一点,您需要转到ComboBox并在ItemsSource属性上启用DataBinding,如下所示:

ItemsSource={Binding Mode=OneWay, Path=NameOfObservableCollectionProperty}