如何在具有组合框样式作为下拉列表的 c# 组合框中合并自动完成模式?

问题描述 投票:0回答:3

我在 C# 中有一个组合框,我想在其中包含自动完成功能。除了

DropDownStyle
模式,我无法将
DropDownList
更改为任何模式。 但是当我改变以下属性时,它给了我一个例外。

symbol1_textbox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
 symbol1_textbox.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
 symbol1_textbox.AutoCompleteSource = AutoCompleteSource.CustomSource;

NotSupportedException

当 DropDownStyle 为 ComboBoxStyle.DropDownList 且 AutoCompleteSource 不是 AutoCompleteSource.ListItems 时,只能使用值 AutoCompleteMode.None

c# winforms combobox autocomplete
3个回答
1
投票

在设置

AutoCompleteSource
之前,您应该先设置
ComboBoxStyle
AutocompleteMode
。这意味着订单很重要。

cmb.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
cmb.AutoCompleteSource = AutoCompleteSource.ListItems;
cmb.AutoCompleteMode = AutoCompleteMode.SuggestAppend;            
cmb.DataSource = nameList;

0
投票

按照异常告诉你的去做:

 symbol1_textbox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
 symbol1_textbox.AutoCompleteMode = AutoCompleteMode.SuggestAppend; 
 symbol1_textbox.AutoCompleteSource = AutoCompleteSource.ListItems; 
 symbol1_textbox.DataSource = symbol1_list;

然后用您需要的所有项目填充“项目”


0
投票

应该是-

comboBox.DropDownStyle = ComboBoxStyle.DropDown;
comboBox.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
comboBox.AutoCompleteSource = AutoCompleteSource.ListItems;
© www.soinside.com 2019 - 2024. All rights reserved.