Вы можете использовать свойство SelectedText вместо свойства Text:
comboBox.Focus();
comboBox.SelectedText = "œ";
Установка значения SelectedText
подразумевает отправку (SendMessage
) сообщения EM_REPLACESEL
в элемент управления Edit ComboBox. Это просто заменяет текст в элементе управления Edit: элемент управления не пытается сопоставить текст, введенный с элементами в списке.
Вы также можете сбросить свойство Text, установив:
comboBox.Text = string.Empty;
comboBox.SelectedText = "œ";
В этом случае установка свойства ComboBox.Text
вызывает событие TextChanged
3 раза, когда есть предыдущий выбор, при настройке Фокуса (выбор текста на выходе, если таковой имеется) и замене выбора вызывается только событие один раз и только если текст действительно изменяется. Это может быть существенной разницей.
Установка свойства Text подразумевает вызов SetWindowText , который отправляет сообщение WM_SETTEXT
. Это вызовет функцию сопоставления с образцом, которая также будет вызывать, в соответствии с Unicode Standard 12.1.0 Свойства сворачивания регистра , нормализацию символов в процедуре сопоставления регистра:
Данные поддерживают обе реализации, которые требуют простого случая
складывания (где длины строк не меняются) и реализации, которые
разрешить полное сворачивание кейса (где длина строк может возрасти). Обратите внимание, что
там, где они могут поддерживаться, полные сгибы дела превосходят: для
Например, они позволяют "MASSE" и "Maße" совпадать.