[c#] How do I set combobox read-only or user cannot write in a combo box only can select the given items?

I am facing a problem in setting the combo property such that only user can select the values form given items, but I cannot write in the combo box.

How can I do so in C#?

This question is related to c# combobox

The answer is


Just change the DropDownStyle to DropDownList. Or if you want it completely read only you can set Enabled = false, or if you don't like the look of that I sometimes have two controls, one readonly textbox and one combobox and then hide the combo and show the textbox if it should be completely readonly and vice versa.


Make the DropDownStyle to DropDownList

stateComboBox.DropDownStyle = ComboBoxStyle.DropDownList;

I think you want to change the setting called "DropDownStyle" to be "DropDownList".


In the keypress event handler:

e.Handled = true;

Try this:

    private void comboBox1_KeyDown(object sender, KeyEventArgs e)
    {
        // comboBox1 is readonly
        e.SuppressKeyPress = true;
    }

The solution is to change the DropDownStyle property to DropDownList. It will help.