[C#] .NET에서 ComboBox를 편집 할 수 없도록하려면 어떻게해야합니까?

ComboBox사용자가 선택할 수있는 항목 목록을 제공 하는 “선택 전용” 을 원합니다 . ComboBox컨트롤 의 텍스트 부분에서 입력을 비활성화해야합니다 .

이것에 대한 나의 초기 인터넷 검색은 KeyPress이벤트 를 포착하기위한 지나치게 복잡하고 잘못된 안내를 주었다 .



답변

ComboBox의 텍스트 부분을 편집 할 수 없게 만들려면 DropDownStyle 속성을 “DropDownList”로 설정하십시오. ComboBox는 이제 사용자에게 기본적으로 선택 전용입니다. Visual Studio 디자이너 또는 C #에서 다음과 같이 할 수 있습니다.

stateComboBox.DropDownStyle = ComboBoxStyle.DropDownList;

MSDN 의 ComboBox DropDownStyle 속성 에 대한 설명서 링크


답변

Visual Studio GUI 참조를 추가하려면 DropDownStyle선택한 ComboBox의 속성 에서 옵션을 찾을 수 있습니다 .

여기에 이미지 설명을 입력하십시오

첫 번째 답변에서 언급 한 줄을 Form.Designer.cs에 자동으로 추가합니다 InitializeComponent().

this.comboBoxBatch.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;


답변

ComboBox를 유지하고 속성 창에서 DropDropStyle 속성을 검색 한 다음 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;
}


답변