1.概述
- AutoComplete 控件与它相同的窗体上的任何编辑控件提供 AutoCompletion 服务
- 在数据输入期间提示您可能的匹配项
- 给 AutoComplete 赋数据源,将部分内容输入到编辑控件中,为其扩展为完整的字符串
2.入门
官方Demo注意点:
- 定义字符串合集,循环添加到DataTable,同时按照字符串合集的索引,将字符串对应的图片循环添加 ImageList
- 添加 ImageList 控件,后台代码将本地图片,循环添加进来
- 添加 AutoComplete 控件
- ImageList 属性绑定 上面添加的 ImageList 控件
- Columns 属性 添加两列
3.设置模式
模式 | 描述 | 截图 |
---|---|---|
AutoSuggest | 在下拉列表中显示可能匹配的列表,仅限首字母匹配,仅限第一列。 | |
AutoAppend | 自动为编辑器控件中的当前内容追加最合适的匹配项,不会出来下拉菜单,仅限首字母匹配,仅限第一列。 | |
Both | 为编辑器控件激活自动完成的 AutoAppend 和 AutoSuggest 模式,仅限首字母匹配,仅限第一列。 | |
Disabled | 禁用对编辑器控件的自动完成支持。 | |
MultiSuggest | 匹配多列首字母,MultiSuggest 模式是 AutoSuggest 的扩展模式。 | |
MultiSuggestExtend | 匹配多列,任意位置出现的字符,并加粗显示。 |
通过代码设置模式
autoComplete1.SetAutoComplete(this.textBox1, Syncfusion.Windows.Forms.Tools.AutoCompleteModes.MultiSuggestExtended);
4.属性和方法
属性 | 描述 | 设计器添加 | 代码添加 |
---|---|---|---|
ShowColumnHeader | 指定匹配项的下拉列表是否显示其标题 | this.autoComplete1.ShowColumnHeader = false; | |
Columns.autoCompleteDataColumnInfo1.MatchingColumn | 文本匹配当前内容的列(输入的内容检索某一列,如果不生效添加this.autoComplete1.RefreshColumns();试试) | this.autoCompleteDataColumnInfo1.MatchingColumn =true; this.autoComplete1.Columns[1].MatchingColumn = true; | |
CaseSensitive | 指定是否忽略字符串比较的大小写,默认为true | autoComplete1.CaseSensitive = true; | |
AutoSortList | 是否需要在自动完成弹出窗口中的项目中执行排序,此属性的默认值为true | autoComplete1.AutoSortList = true; | |
ShowGripper | 右下脚是否显示抓取器(可拖动) | this.autoComplete1.ShowGripper = true; | |
EnableDuplicateValues | 获取或设置是否允许AutoComplete DataSource中的重复值,此属性的默认值为true | autoComplete1.EnableDuplicateValues = true; | |
AutoAddItem | 将item项添加到历史列表中。输入内容,按Enter后 | autoComplete1.AutoAddItem = true; | |
AllowListDelete | 将item项从历史列表中删除 | autoComplete1.AllowListDelete = true; | |
ResetHistory() | 删除 AutoComplete 组件保存的历史记录项 | autoComplete1.ResetHistory(); | |
MaxNumberofSuggestion | 设置在自动完成弹出窗口中显示的建议数量 | autoComplete1.MaxNumberofSuggestion = 2; |