2009-05-14 1 views
2

Я разрабатываю приложение в WPF, где один клик по элементу изменит представление на что-то еще. Проблема в том, что если пользователь дважды нажимает на элемент, первым событием будет один щелчок, который открывает другой вид, а следующее событие будет двойным щелчком на новом представлении. Этот двойной щелчок на новом представлении вызовет другие вещи. Итак, вопрос: Могу ли я остановить двойной щелчок после того, как я получу событие с одним щелчком мыши на первый взгляд? Я попытался установить Handled = true в MouseButtonEventArgs одним методом, но это не сработает. Другой вид все равно получит двойной щелчок, и случайные вещи все равно произойдут. Любое умное решение моей проблемы?Остановить двойной щелчок после однократного нажатия

/Daniel

ответ

1

RaymondChen снова ценный источник.

Я предлагаю вам прочитать связанный half second delay article для более глубоких подробностей, но это показывает, как задержка проявляется пользователю.

+0

проблема с этим решением заключается в том, что в течение этой половины секунды пользователь мог щелкнуть что-то еще, а затем произойдут две вещи. То, что происходит после первого нажатия на первый элемент и то, что происходит после второго нажатия на второй элемент. Это можно решить, установив какое-то состояние в модели для приложения, чтобы он знал, что первый элемент уже был клик. Не очень приятное решение. –

+0

Если ваши пользователи быстро нажимают на несколько разных элементов пользовательского интерфейса, я боюсь, что пользовательский код и состояние, хранящиеся в соответствующих местах, являются единственным решением ... – ShuggyCoUk