我在c#中有一个组合框,我想在其中包含自动完成功能。我不能将DropDownStyle
更改为DropDownList
模式。但是,当我更改以下属性时,它会给我一个例外。
symbol1_textbox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
symbol1_textbox.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
symbol1_textbox.AutoCompleteSource = AutoCompleteSource.CustomSource;
无支持异常
当DropDownStyle为ComboBoxStyle.DropDownList并且AutoCompleteSource不是AutoCompleteSource.ListItems.时,只能使用值AutoCompleteMode.None
在设置AutocompleteMode
之前,应先设置AutoCompleteSource
和ComboBoxStyle
。这意味着秩序很重要。
cmb.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
cmb.AutoCompleteSource = AutoCompleteSource.ListItems;
cmb.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
cmb.DataSource = nameList;
只需执行异常告诉您的操作:
symbol1_textbox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
symbol1_textbox.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
symbol1_textbox.AutoCompleteSource = AutoCompleteSource.ListItems;
symbol1_textbox.DataSource = symbol1_list;
然后用需要的所有项目填充"项目"
应该是-
comboBox.DropDownStyle = ComboBoxStyle.DropDown;
comboBox.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
comboBox.AutoCompleteSource = AutoCompleteSource.ListItems;