通过键入选择comboBox中的项目

时间:2012-04-17 08:46:32

标签: c# winforms combobox

我有一个组合框,里面有数百个项目。用户必须能够在组合框中键入文本。当用户键入文本时,必须选择或列出以键入值开头的项目。用户必须能够连续输入。我的ComboBox DropDownStyle是DropDownList

例如: 通过键入在comboBox中选择名称时,它只允许一个字母。因此,如果我输入“A”,它将跳转到以“A”开头的第一个字母。当我连续输入组合框时,所选项目根据当前按键变化。如果我按“As”,组合框查看以“s”开头的项目。

我正在使用Win Forms。

提前感谢..

2 个答案:

答案 0 :(得分:69)

comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDown;
comboBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
comboBox1.AutoCompleteSource = AutoCompleteSource.ListItems;

答案 1 :(得分:-1)

您必须连接到TextChanged事件。当文字 更改,过滤列表(使用DataView)并获取第一个文本 结果,将组合框的文本设置为该结果。你必须有一个 检查你的处理程序当然,以确定是否处理 事件(当您更改文本时,将触发另一个TextChanged事件)。 当然,您还要突出显示他们输入的文本,以及 将插入符号放在适当的位置。