Колесо мыши не работает при наведении на дочерние элементы управления ScrollViewer

Я как бы ожидал, что мои дочерние элементы управления ScrollViewer будут автоматически передавать события MouseWheel для резервного копирования ScrollViewer, но это не так.

У меня есть ScrollViewer со списком ListBox. Если я вручную изменяю размер ListBox, чтобы он был меньше, чем ScrollViewer, MouseWheel работает со всем ScrollViewer, но не действует, когда мышь располагается над ListBox.

Как это сделать стандартным способом? Могу ли я поместить триггер события в ListBox, который запускает событие в родительском элементе? Могу ли я обрабатывать и перенаправлять событие в коде позади?


person Rich    schedule 17.04.2009    source источник
comment
Ответ здесь: serialseb.blogspot.com/ 2007/09 /   -  person    schedule 03.02.2011


Ответы (1)


В шаблоне ListBox есть ScrollViewer, так что ScrollViewer будет обрабатывать события и препятствовать их распространению вверх по визуальному дереву.

Чего именно вы пытаетесь достичь, располагая ListBox внутри ScrollViewer? Возможно, вам нужно изменить шаблон ListBox, но это невозможно сказать без дополнительной информации.

person Kent Boogaart    schedule 17.04.2009
comment
Я понятия не имел, что ScrollViewer был частью шаблона ListBox, поэтому я предполагал, что мне нужно поместить ListBox внутри ScrollViewer. Спасибо. - person Rich; 17.04.2009