| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > WPF и Silverlight > События MouseRightButtonUp и MouseLeftButtonUp |
| Автор: mephistopheies 26.11.2008, 17:32 | ||
Есть вот такой код
так вот, тыкая на меню правой кнопкой, у окна вылетает событие w_MouseRightButtonUp, в sender как и следовало ожидать лежит w, а в MouseButtonEventArgs содержится ссылка на тот элемент куда реально был клик, например на меню. а вот при клике по меню левой кнопкой, нифига w_MouseLeftButtonUp не вылетает. но если тыкнуть в другое место окна, то все ок. так вот в чем фишка, сталкивался ли кто нибудь с такой ситуацией, и как сделать что бы w_MouseLeftButtonUp срабатывало? |
| Автор: kelus 27.11.2008, 17:38 |
| а почему бы не повесить дополнительное событие на само меню? |
| Автор: mephistopheies 27.11.2008, 17:43 | ||
ну по идее так и должно было бы быть, но раз MouseRightButtonUp упрощает работу, то тоже следовало бы ожидать и от MouseLeftButtonUp это было бы удобно юзать, когда у тебя есть xaml, ты генеришь форму по нему, и что бы не подписываться на клик каждого контрола, просто подписался на клик по окну, а там уже смотришь куда реально тыкнули. как бы заранее не известно что в xaml'е, и неудобно подписываться на все, т.е. нада обойти все объекты в окне и т.д. |
| Автор: kelus 27.11.2008, 18:43 |
| возникла одна догадка - проверил, как оказалось, отдельный обработчик для левой кнопки на меню тоже не работает. есть мнение, что там присутствует свой обработчик, который глушит остальные. |
| Автор: Partizan 27.11.2008, 19:41 |
| есть мнение, что надо обрабатывать события Preview..... |
| Автор: mephistopheies 28.11.2008, 14:10 |
| Partizan, спасибо, работает =) |