Soru C # içinde bir ComboBox içine manuel giriş nasıl engellenir


C # içinde bir form kullanıyorum ComboBox. Bir kullanıcının el ile metin girmesini nasıl engellerim? ComboBox C # içinde?

this.comboBoxType.Font = new System.Drawing.Font("Arial", 15.75F);
this.comboBoxType.FormattingEnabled = true;
this.comboBoxType.Items.AddRange(new object[] {
            "a",
            "b",
            "c"});
this.comboBoxType.Location = new System.Drawing.Point(742, 364);
this.comboBoxType.Name = "comboBoxType";
this.comboBoxType.Size = new System.Drawing.Size(89, 32);
this.comboBoxType.TabIndex = 57;   

Tek seçenek olarak A B C istiyorum.


33
2018-03-10 17:07


Menşei




Cevaplar:


Sadece açılan kutunuzu DropDownList olarak ayarlayın:

this.comboBoxType.DropDownStyle = ComboBoxStyle.DropDownList;

104
2018-03-10 17:10





DropDownStyle'ı DropDownList'e ayarlamak istediğinizi düşünüyorum.

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

14
2018-03-10 17:09





Ekleyebilirsin e.Handled = true KeyPress etkinliğinizde:

private void Combo1_KeyPress(object sender, KeyPressEventArgs e)
    {
        e.Handled = true;
    }

6
2017-11-26 08:27



Yine de, açılan kutuda seçili metni sağ tıklayıp Kes, voila, metin kaybolabilirsiniz. - ajeh


Denetim için özellikler penceresinden, DropDownStyle eşit Açılır liste.


5
2017-08-24 09:55





Neden ComboBox kullanıyorsunuz?

C # adlı bir kontrol var Liste kutusu. Teknik olarak, bir ComboBox'ın bir Liste Kutusundaki farkı, bir ComboBox'ın giriş alabilmesidir, bu yüzden ihtiyacınız olan kontrol değilse, o zaman kullanmanızı öneririm ListBox

Listbox Tüketim kılavuzu burada: C # ListBox


1
2018-03-09 02:16





Sadece DropDownStyle özelliğini DropDownList olarak ayarlayın Bu resme bak Exemple 


1
2017-09-15 16:36





Bu Combobox manuel girişini kilitler ve sadece comboboxlist öğelerini görüntüler

this.yourcomboBoxname.DropDownStyle = ComboBoxStyle.DropDownList;

0
2018-04-19 19:31





Öğeleri manuel olarak ekleme özelliğini kullanmayı seviyorum, ancak seçilen öğeleri listede olanlarla sınırlayın. Bu olayı ComboBox'a eklerim. SelectedItem'i aldığınız ve Metni aldığınız sürece, doğru önceden tanımlanmış öğeleri alırsınız; a, b ve c.

private void cbx_LostFocus(object sender, EventArgs e)
{
  if (!(sender is ComboBox cbx)) return;
  int i;
  cbx.SelectedIndex = (i = cbx.FindString(cbx.Text)) >= 0 ? i : 0;
}

0
2017-07-17 12:40





private void cmbDatesShipment_KeyPress(object sender, KeyPressEventArgs e)
{
    e.Handled = true;
}

-1
2017-07-11 11:57



Bu bir tekrarı mı bu mevcut cevap? - Pang