联想控件

C# WINFORM 某些控件实现联想输入功能

需要用到的属性介绍:

AutoCompleteMode

指定在  ComboBox  和  TextBox  控件中使用的自动完成功能的模式。
NoneComboBox and TextBox controls."> 禁用 ComboBox 和 TextBox 控件的自动完成功能。
Suggest 显示与编辑控件关联的辅助下拉列表。 此下拉列表填充了一个或多个建议完成字符串。
Append将最可能的候选字符串的其余部分追加到现有的字符,并突出显示追加的字符。
SuggestAppend同时应用 Suggest  Append 选项。

AutoCompleteSource 

指定  ComboBox  和  TextBox  自动完成功能的源。

成员名称
说明
FileSystem 将文件系统指定为源。
HistoryList 包括历史记录列表中的统一资源定位器 (URL)。
RecentlyUsedList 包括最近使用的 URL 列表中的统一资源定位器 (URL)。
AllUrl  HistoryList  RecentlyUsedList 的等效项指定为源。
AllSystemSources 将 FileSystem 和 AllUrl 的等效项指定为源。 当 AutoCompleteMode 已设置为某个值,而不是默认值时,此即为默认值。
FileSystemDirectories 指定仅自动完成目录名而不自动完成文件名。
CustomSource 将内置 AutoCompleteStringCollection 中的字符串指定为源。
None 指定当前没有使用任何 AutoCompleteSource 这是 AutoCompleteSource 的默认值。
ListItems 指定 ComboBox 的项表示源。
 
 
示例:
1、 ComboBox控件 联想输入
属性更改:
AutoCompleteMode 值为:SuggestAppend
AutoCompleteSource 值为:ListItems
后台数据绑定:
this.combobox1.DataSource = list or dataTable or ...
备注:DropDownStyle属性的值不能为DropDownList
 
2.TextBox控件 联想输入
属性更改:
AutoCompleteMode 值为:SuggestAppend
AutoCompleteSource 值为:CustomSource
后台数据绑定:
string[] tmp = new string[8] { "A", "AA", "AAA", "AB", "ABB", "ABCC", "AC","ACC" }; this.textBox1.AutoCompleteCustomSource.Clear(); this.textBox1.AutoCompleteCustomSource.AddRange(tmp);
转载自:新浪博客(博主 Sky微笑的鱼er
http://blog.sina.com.cn/s/blog_6e9c36f50100xiuc.html
 
 public static class TextBoxExten
    {
        public static void AutoComplete(this  TextBox textBox)
        {
            textBox.AutoCompleteMode = AutoCompleteMode.Suggest;
            textBox.AutoCompleteSource = AutoCompleteSource.CustomSource;
        }
        public static void AutoComplete(this  ComboBox textBox)
        {
            ComboBox.AutoCompleteMode = AutoCompleteMode.Suggest;
            ComboBox.AutoCompleteSource = AutoCompleteSource.ListItems;
        }
    }

如何引用:

this.ComboBoxDeviceName.AutoComplete();

 重新修改:

 public static void AutoComplete(this  TextBox textBox)
        {
            textBox.AutoCompleteMode = AutoCompleteMode.Suggest;
            textBox.AutoCompleteSource = AutoCompleteSource.CustomSource;
        }
        public static void AutoComplete(this  ComboBox textBox, string[] listName)
        {
            ComboBox.AutoCompleteCustomSource.Clear();
            ComboBox.AutoCompleteCustomSource.AddRange(listName);
            ComboBox.DataSource = listName;
            ComboBox.AutoCompleteMode = AutoCompleteMode.Suggest;
            ComboBox.AutoCompleteMode = AutoCompleteMode.Suggest;
            ComboBox.AutoCompleteSource = AutoCompleteSource.ListItems;
        }

引用代码:

 List<string> listName = new List<string>() { "A","AA","B","C"};
            this.ComboBoxName = this.ComboBoxName.AutoCompleteAndAddSource(listName);

 

 

转载于:https://www.cnblogs.com/zhangyuanbo12358/p/3732303.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值