C#文本框自动完成:如何提供自定义';匹配';作用

本文关键字:何提供 自定义 作用 匹配 文本 | 更新日期: 2023-09-27 18:23:43

我通过一组名称的自定义源使用带有自动完成功能的C#TextBox,例如John Smith、Mary Jane等。。问题是,如果我输入"John",我会在下拉列表中看到"John Smith"。但是,如果我开始键入"Smith",我将不再在下拉列表中看到"John Smith"。我想改变这一点,我想我必须扩展TextBox类,并提供我自己的函数来匹配数据。我只是不知道哪个TextBox函数需要被覆盖。

其次,我想解决的另一个相关问题是:下拉文本总是左对齐。如何使其居中对齐?

C#文本框自动完成:如何提供自定义';匹配';作用

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

来自TextBox.AutoCompleteCustomSource属性

使用AutoCompleteCustomSource、AutoCompleteMode和AutoCompleteSource属性创建一个自动通过将输入的前缀与维护源中所有字符串的前缀。

最好的选择似乎是覆盖您的TextBoxOnTextChanged事件。下面的问题有一个很好的例子;

  • C#自动完成