1. 采用CustomSource當做提示集合
將下列代碼添加到窗口加載函數中即可。假設unitNameList是獲取的想要添加到下拉列表中的字符串列表。
AutoCompleteStringCollection collection = new AutoCompleteStringCollection();
// 獲取單位列表
List<string> unitNameList = this.getAllUnitName();
foreach (string unitname in unitNameList)
{
collection.Add(unitname);
//Console.WriteLine("自動提示" + unitname);
}
this.comboBox2.AutoCompleteCustomSource = collection;
this.comboBox2.AutoCompleteSource = AutoCompleteSource.CustomSource;
this.comboBox2.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
其中AutoCompleteMode包含None,Suggest,Append和SuggestAppend四種情況。
None:關閉自動補全功能
Suggest:展開下拉列表並顯示匹配的結果
Append:自動補全
SuggestAppend:Suggest和Append的組合,即顯示下拉列表也自動補全。
2. 直接使用下拉列表中的項作為匹配的集合
AutoCompleteSource設置為ListItems。
// 獲取單位列表
List<string> unitNameList = this.getAllUnitName();
foreach (string unitname in unitNameList)
{
this.comboBox2.Items.Add(unitname);
}
this.comboBox2.AutoCompleteSource = AutoCompleteSource.ListItems;