Winforms - остановить выделение SelectedItem без использования стиля DropDownList

Речь идет о ComboBox, используемом в Winforms. Мне нужно остановить выделение выбранного элемента. Я знаю, что смогу это сделать, если установлю стиль поля со списком ComboBoxStyle.DropDownList. Но я ищу решение, где мне не нужно это использовать. Вместо этого на данный момент я использую ComboBoxStyle.DropDown. У меня нет другого варианта, потому что, если я установлю DropDown, мне придется иметь дело с какой-то другой проблемой в моем коде. Это связано с чем-то другим, чего я не могу избежать. Может ли кто-нибудь предложить альтернативу, пожалуйста?


person nidarshani fernando    schedule 30.11.2015    source источник
comment
Можете ли вы объяснить это больше? Что это означает Остановить выделение выбранного элемента, например, когда стиль поля со списком DropDownList   -  person Reza Aghaei    schedule 30.11.2015
comment
Когда я щелкаю мышью (влево или вправо), она выделяется синим цветом.   -  person nidarshani fernando    schedule 30.11.2015
comment
На самом деле, щелчки мышью не должны быть разрешены   -  person nidarshani fernando    schedule 30.11.2015
comment
И даже если бы вы могли реализовать его, пока он будет действовать как стиль DropDownList, почему бы вам не использовать сам этот стиль?   -  person Reza Aghaei    schedule 30.11.2015
comment
Этот? stackoverflow.com/questions/25681886/   -  person Loathing    schedule 30.11.2015


Ответы (1)


используйте следующий код в событии Paint вашей формы.

private void myForm_Paint(object sender, PaintEventArgs e)
{
    comboBox1.SelectionLength = 0;
}

или передать фокус другому элементу управления в событии выбранного индекса со списком:

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    comboBox2.Focus();
}
person Ehsan.Saradar    schedule 30.11.2015
comment
Я сделал. К сожалению, это не помогло. - person nidarshani fernando; 30.11.2015