WPF ComboBox, эквивалент события VB6 ComboBox.ClickC#

Место общения программистов C#
Ответить
Anonymous
 WPF ComboBox, эквивалент события VB6 ComboBox.Click

Сообщение Anonymous »

Я переношу старое приложение VB6 на WPF (.NET 8).
В VB6 элемент управления ComboBox имеет событие Click, которое срабатывает только, когда пользователь фактически выбирает элемент из раскрывающегося списка. Оно не срабатывает, когда пользователь просто вводит текст в поле со списком.
Однако в WPF, похоже, нет прямого эквивалента.
Событие ComboBox.SelectionChanged срабатывает не только тогда, когда элемент выбран, но также всякий раз, когда пользователь вводит что-то, соответствующее существующему элементу, даже если он еще не закончил ввод.
В приложении, которое я мигрирую, многие имена элементов содержатся в именах других элементов, что приводит к срабатыванию SelectionChanged до того, как пользователь фактически закончил вводить полное имя нужного элемента.
Например, если поле со списком содержит:

Код: Выделить всё

Item1
...
Item12
и пользователь вводит Item12, SelectionChanged срабатывает, как только вводится Item1, даже если пользователь еще не закончил ввод.
Мне нужно событие, которое срабатывает только тогда, когда пользователь действительно выбирает элемент, например щелкнув по нему или нажав Enter после ввода. Есть ли простой способ добиться такого же поведения, как у VB6, в WPF?

Подробнее здесь: https://stackoverflow.com/questions/797 ... lick-event
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»