我想要一個「只選」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