2013-03-27 4 views

ответ

0

MSDN на ComboBox.DropDownStyle:

DropDownStyle свойство определяет, будет ли всегда отображается список, или отображается список в раскрывающемся списке. Свойство DropDownStyle также указывает, можно ли редактировать текстовую часть.

Docs на ComboBoxStyle.Simple:

Указывает, что список всегда виден и что текст часть редактируется. Это означает, что пользователь может ввести новое значение и не ограничивается выбором существующего значения в списке.

Итак, ComboBoxStyle.Simple предполагает, что список может быть изменен пользователем, и это сбивает с толку, чтобы отключить редактирование этой DropDownStyle выбран. Альтернативы:

  • Если вы нормально с раскрывающимся использованием списка ComboBoxStyle.DropDownList
  • Если вы хотите, чтобы отобразить нередактируемый список с целью подобной ComboBoxStyle.Simple рассмотреть возможность использования ListBox
+0

ListView оставляет фокус, когда пользователь пытается использовать другие элементы управления – mcuw

+0

@mcuw Не работает ComboBox? Кстати, почему вам нужно сосредоточиться на контроле? И я сказал 'ListBox' не' ListView'. –

0

Если вы действительно необходимо добиться этого эффекта на Combox, вы можете просто поймать события, такие как «TextChanged», а затем установить его на «» и спросить, есть ли (! comboBox1.DropDownStyle == ComboBoxStyle.Simple) перед добавлением элементов в коллекцию Items. Хотя кажется, что есть более эффективные способы достижения аналогичной функциональности с использованием списка, как было предложено ранее.