我的C#Windows窗体应用程序中有一个文本框,其中AutoCompleteMode设置为AutoCompleteMode.Suggest,而我的内容源是自定义源。
我的内容来源是自定义的,具有以下值:
通过检查建议的项目"是否以"开头,内容完成才会起作用。文本框中的值。
例如:
text=J
会产生建议:
但是,如果用户输入
text=Walk
没有结果。
如何完成内容以建议以下内容?
此外,我的最终目标是拥有一个文本框,个人可以轻松地开始输入电子邮件地址。自动完成建议的内容将是姓名+电子邮件地址。例如:
- Jim Smith <jsmith@mycorp.com>
- Alice Walker <alice@some.email.com>
- Bob Walker <bob.walker@mycorp.com>
- Jeremy Smith <jeremys@foo.com>
答案 0 :(得分:3)
内置TextBox无法实现这一点。
阅读reference source表明,自动完成功能会调用本机函数SHAutoComplete来完成它的工作。那只做前缀匹配。
你必须继承TextBox的子类并提供你自己的建议功能(或购买一个/找到一个开源的功能)来做到这一点。