winform中的TextBox控制項含有如下三個屬性: ① AutoCompleteMode:自動提示與補全的方式,具體方式參見AutoCompleteMode枚舉; ② AutoCompleteSource:自動提示與補全所使用的字元串源,具體設置參見AutoCompleteSource,當值設... ...
問題:Winform開發中,有一個TextBox控制項用以輸入姓名,現希望在輸入名字時能夠自動提示所有可能的名字。
解答:winform中的TextBox控制項含有如下三個屬性:
① AutoCompleteMode:自動提示與補全的方式,具體方式參見AutoCompleteMode枚舉;
② AutoCompleteSource:自動提示與補全所使用的字元串源,具體設置參見AutoCompleteSource,當值設置為CustomSource時需要設置第③個屬性;
③ AutoCompleteCustomSource:自定義的自動提示與補全所使用的字元串源。
只要適當地設置上面3個屬性即可解決問題。
this.textBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend; this.textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource; string[] names = new string[] { "張三豐", "獨孤求敗", "風清揚", "掃地僧" }; this.textBox1.AutoCompleteCustomSource.AddRange(names);
上述操作對於ComboBox控制項同樣適用。
思考:如果ComboBox使用其Items屬性(即下拉列表)作為字元串源,該如何設置?
參考:
string[] names = new string[] { "張三豐", "獨孤求敗", "風清揚", "掃地僧" }; this.comboBox1.Items.AddRange(names); this.comboBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend; this.comboBox1.AutoCompleteSource = AutoCompleteSource.ListItems;
文章同步更新:http://www.motyer.cn/Files/BlogDetails/winform-textbox-autocomplete.html