WinForms中的只读ComboBox

28

我正在使用C#、Visual Studio 2008和设计师与WinForms编写GUI。我有一个ComboBox控件,希望它只允许从提供的选项中选择,而不接受用户输入的字符串。该控件似乎没有ReadOnly属性,禁用它会影响控件的可读性(并且还会禁止用户选择)。


DropDownStyle属性正是我在寻找的。简直不敢相信我竟然忽略了它。 - Brock Greman
3
可能是如何在 .net 中使 ComboBox 不可编辑? 的重复问题。 - nawfal
5个回答

71

将DropDownStyle设置为"DropDownList"


1
但是你无法通过编程方式操纵组合框。 - clamchoda

11

将ComboBox.DropDownStyle属性设置为ComboBoxStyle.DropDownList。


4
使用类似以下代码设置允许的选项,仅使用这些选项。
comboBox1.DropDownStyle = ComboBoxStyle.DropDownList;
comboBox1.Items.AddRange(new object[] {
    "One",
    "Two",
    "Three",
    "Four"});

3
另一种简单的方法是这样做。
private void combobox1_KeyPress(object sender, KeyPressEventArgs e)
{
    e.Handled = true;
}

0

尝试使用DropDownListbox


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接