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

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

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

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

1 ответ

Решение

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

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

Другие вопросы по тегам