![]() |
|
Модераторы: gambit, Kefir, Partizan |
![]()
|
|
| AleksPingvin |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 20.5.2011 Репутация: нет Всего: нет |
Есть контейнер с навешенным на нем PreviewMouseDown, и есть компонент лежащий в нем с навешенным на него MouseDown. Если я кликаю по компоненту, то вначале происходит событие в контейнере, и только потом в компоненте. Как сделать так что бы событие было ТОЛЬКО в компоненте. Но при этом при клике на других компонентах (другого типа) или на свободной области контейнера срабатывало PreviewMouseDown контейнера.
Первое что приходит в голову - смотреть в обработчике контейнера, есть ли под точкой клика нужный комопнент и если есть, то не обрабатывать событие. Но думаю что это не айс буде... |
|||
|
||||
| AleksPingvin |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 20.5.2011 Репутация: нет Всего: нет |
Ребят ну подскажите пожалуйста решение. Очень надо. Вот прямо горит((((
|
|||
|
||||
| -Mikle- |
|
|||
![]() Невидимка Vingrad'а ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1672 Регистрация: 22.6.2003 Где: Казахстан, Астана Репутация: 13 Всего: 59 |
А тебе обязательно использовать PreviewMouseDown в контейнере? Если нет, то используй в контейнере MouseDown. В нужном компоненте в обработчике MouseDown выставляй e.Handled = true, это запрещает дальнейшее распространение события по дереву элементов и оно не дойдет до контейнера. В случае с PreviewMouseDown событие начинает сползать вниз, то есть сначала в контейнере, а затем до твоего элемента в нем. В таком случае уже, получается, поздно что-либо предпринимать для остановки маршрутизации события.
-------------------- Если тебе плюют в спину, значит ты впереди... |
|||
|
||||
| AleksPingvin |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 20.5.2011 Репутация: нет Всего: нет |
Проблема уже решена) Но возник другой вопрос. При перетаскивании я например рисую adorner, удаляю его по событию Drop. Но. Если я помещу курсор с Adorner-ом, над компонентом с AllowDrop="false" то при отпускании событие Drop не произойдет и код не отработает. Как отловить эту ситуацию?
Это сообщение отредактировал(а) AleksPingvin - 20.6.2011, 14:17 |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | WPF и Silverlight | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |