C#文本框自动填充:如何提供自定义&匹配'功能?

时间:2014-09-21 12:33:56

标签: c# autocomplete textbox

我正在使用带有自动完成功能的C#TextBox,通过自定义来源的名称集合,例如约翰史密斯,玛丽珍等。问题是,如果我输入'John',我确实会在下拉列表中看到'John Smith'。但如果我开始输入“史密斯”,我不会再在下拉列表中看到“约翰史密斯”。我想改变它,我想我必须扩展TextBox类并提供我自己的函数来匹配数据。我只是不知道需要覆盖哪个TextBox函数。

其次,我想解决的另一个相关问题是:下拉文本始终保持对齐。我怎样才能使它居中对齐?

1 个答案:

答案 0 :(得分:1)

没有直接方法,因为AutoCompleteCustomSource只允许基于输入字符串进行前缀匹配。

来自TextBox.AutoCompleteCustomSource Property

  

使用AutoCompleteCustomSource,AutoCompleteMode和   AutoCompleteSource属性可自动创建TextBox   通过比较输入的前缀来完成输入字符串   维护来源中所有字符串的前缀。

最佳选项似乎会覆盖TextBox的{​​{3}}。下面的问题有一个很好的例子;