Запретить автовыбор поведения System.Window.Forms.ComboBox (C #)
Фон:
у меня естьForms.ComboBox
сDropDownStyle = DropDown
.
Я не пользуюсьAutoComplete
, но я реализовал нечто подобное, которое не только фильтрует начало текста, но использует регулярное выражение и показывает все элементы, которые соответствуют введенному тексту. Это отлично работает.
Тем не менее, когда я набираю первую букву соответствующего элемента,ComboBox
возвращается к своему первоначальному поведению и сетамDroppedDown = true
и автоматически выбирает первую запись и завершает текст в соответствии с выбранным элементом (аналогичноAutoCompleteMode
Append). То, что я хочу, это без автоматического выбора и автозаполнения.
Что я обнаружил, так это то, что я как-то должен предотвратитьSendMessage()
сCB_FINDSTRING
быть вызванным и заменитьCB_FINDSTRING
сCB_FINDSTRINGEXACT
(MSDN Link).
Я думаю, что я должен расширить класс ComboBox, но я не уверен, какие методы я должен переопределить. Я работаю с C # .NET Framework v3.5.
Вопросы:
Как мне продлитьWindows.Forms.ComboBox
предотвратить поведение автоматического выбора?Ссылки:
Как я могу предотвратить автоматический выбор в раскрывающемся списке ComboBox, кроме точных совпадений? (не помог мне)