AutoCompleteBox: не проверять с помощью клавиш вверх / вниз - PullRequest
2 голосов
/ 16 марта 2011

Мой AutoCompleteBox вызывает службу WCF при изменении выбора, обычно с помощью мыши. Однако если пользователь использует клавиши со стрелками для навигации по выбору, событие запускается для каждого элемента, что делает приложение слишком большим объемом данных. Как я могу предотвратить срабатывание AutoCompleteBox_SelectionChanged при нажатии клавиш?

Я нашел это, что звучало как хорошее решение, но оно не работает http://betaforums.silverlight.net/forums/p/137710/307786.aspx

Ответы [ 2 ]

2 голосов
/ 27 марта 2011

хорошо, вместо использования AutoCompleteBox_SelectionChanged, я использую AutoCompleteBox_DropDownClosed, и это решило проблему.

1 голос
/ 05 апреля 2011

Я только что нашел, как я решил эту проблему.Также я не использую SelectionChanged.
Я добавил поведение к элементу DataTemplate (в корень сетки).Это поведение прикрепляет обработчик кликов к элементу.Когда используются ключи, поведение «спит», когда я щелкаю мышью на элементе, поведение вызывается и выполняет свою работу.(Также я связываю необходимое свойство item со свойством Tag в Grid DataTemplate, чтобы получить его из поведения)

Не подходит для каждого решения, но может быть полезно.

...