Как я могу обнаружить колесико мыши для элемента управления WPF WebView?

Я пытаюсь определить, когда колесико мыши используется в элементе управления WPF WebView, используя событие PreviousMouseWheel. В xaml я попытался добавить тег к WebView, но событие срабатывает только тогда, когда мышь находится где-то за пределами элемента управления WebView. Я также попробовал тег на содержащем сетке и самом окне, но с тем же результатом.

xaml:

<Grid Name="windowGrid">
    <StackPanel>
        <Grid x:Name="gridTest" >
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*" />
            </Grid.ColumnDefinitions>

            <Grid.RowDefinitions>
                <RowDefinition Height="*"/>
            </Grid.RowDefinitions>

            <Controls:WebView Name="wvc" Grid.Row="0" Grid.Column="0"
                    Width="800" Height="600" 
                    Source="http://www.google.ca"
                    PreviewMouseWheel="my_PreviewMouseWheel"
             />
        </Grid>
    </StackPanel>
</Grid>

person Kent    schedule 14.11.2020    source источник


Ответы (1)


Не поддерживается. Как правило, маршрутизируемые всплывающие события используются для отслеживания изменений состояния UI элементов. Но если посмотреть исходники на GitHub, можно найти только поднятие за один перенаправленное событие - new RoutedEventArgs(GotFocusEvent).

person Jackdaw    schedule 15.11.2020
comment
Так нельзя тогда. - person Kent; 15.11.2020
comment
К сожалению, текущая последняя версия WebView2 1.0.674-prerelease также не поддерживает события MouseWhell. Если возможно, загрузите и запустите примеры с https://github.com/MicrosoftEdge/WebView2Samples. - person Jackdaw; 15.11.2020