ComboBox - 如何防止掉落后选择项目

时间:2014-08-08 09:04:21

标签: c# winforms

如果我正在输入例如" q"组合框中有项目,首字母是" q"然后在下降后跳转到这个项目。有没有办法阻止这种情况输入更多的字母?

private void comboBox1_TextChanged(object sender, EventArgs e)
{
   comboBox1.DroppedDown = true;
}

2 个答案:

答案 0 :(得分:2)

您可以尝试以下代码

comboBox1.DropDownStyle = ComboBoxStyle.DropDown;
comboBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
comboBox1.AutoCompleteSource = AutoCompleteSource.ListItems;

答案 1 :(得分:2)

对我来说,关键是将事件替换为TextUpdate并在下拉列表后替换文本,然后在ComboBox中取消选择文本。

    private void comboBox1_TextUpdate(object sender, EventArgs e)
    {
        var savedText = comboBox1.Text;
        comboBox1.DroppedDown = true;
        comboBox1.Text = savedText;
        comboBox1.Select(savedText.Length, 0);
    }