我渴望找到一些可靠的(免费的,开源的,或者教程/示例)代码,让WPF组合框在用户输入时进行自动拼接/自动过滤。但我所做的一切都有点问题。。。
A Reusable WPF Autocomplete TextBox 就差一点,但我没办法 work with more than one filter (更多信息 here
WPF autocomplete textbox/combobox 不适合我,因为它继承自UserControl,因此不支持我需要的数据模板(用于显示/选择具有多个属性的对象的一个属性的值)。
Automatically Filtering a ComboBox in WPF 因为它似乎找不到继承的组合框代码的EditableTextBox部分(通过 (TextBox)base.GetTemplateChild("PART_EditableTextBox")
(TextBox)base.GetTemplateChild("PART_EditableTextBox")
Building a Filtered ComboBox for WPF 只是陷入了一个刷新循环,然后在我只键入几个字母后溢出堆栈。
我知道 Windows Forms' Combobox control has AutoCompleteMode 我可以 embed it in WPF ,但我无法想象它能很好地与我的WPF数据绑定配合使用。
也许这太复杂了,我需要简化,也许通过为ComboBoxen构建一维(单属性)ObservableCollection。。。然而,要使用同一数据集的不同视图对多个控件应用多个筛选器(一个由另一个控件的值设置,另一个来自用户正在键入的内容)的挑战将需要相当大的处理能力,以便在用户每次键入字符时销毁和重建列表!
所以。。。我束手无策。有什么建议吗?
如果您的组合框附加了一些数据源,
1-IsTextSearchEnabled = true. 2-IsEditable = true.
你可以走了
http://blogs.windowsclient.net/dragonz/archive/2010/02/23/autocomplete-textbox-control-for-wpf.aspx