我想要一个“只选”ComboBox
,它提供了供用户选择的项目列表。应在0控件的文本部分中禁用键入。如何在.NET中使ComboBox不可编辑?
我最初的这个搜索引发了一个过于复杂,误导性的建议来捕获KeyPress
事件。
我想要一个“只选”ComboBox
,它提供了供用户选择的项目列表。应在0控件的文本部分中禁用键入。如何在.NET中使ComboBox不可编辑?
我最初的这个搜索引发了一个过于复杂,误导性的建议来捕获KeyPress
事件。
若要使ComboBox的文本部分不可编辑,请将DropDownStyle属性设置为“DropDownList”。 ComboBox现在基本上只为用户选择。您可以在Visual Studio设计做到这一点,或C#这样的:
stateComboBox.DropDownStyle = ComboBoxStyle.DropDownList;
链接为ComboBox DropDownStyle property MSDN上的文档。
保留在您的ComboBox上,并从属性窗口搜索DropDropStyle属性,然后选择DropDownList。
要添加一个Visual Studio GUI参考,你可以找到下所选择的组合框的属性DropDownStyle
选项:
,它会自动添加在第一个答案表格中提到的线。 Designer.cs InitializeComponent()
,像这样:
this.comboBoxBatch.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
COMBOBOXID.DropDownStyle = ComboBoxStyle.DropDownList;
继续选择后在输入显示数据,这样做的:
VB.NET
Private Sub ComboBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles ComboBox1.KeyPress
e.Handled = True
End Sub
C#
Private void ComboBox1_KeyPress(object sender, KeyPressEventArgs e)
{
e.Handled = true;
}
有一点要记住做这意味着你可以不再programmically更新`Text`属性,用它来显示默认消息使用`ComboBox.SelectedIndex = -1;` – Lankymart 2012-11-20 15:55:33