检测UWP应用程序中的滚动方向
我正在用C#开发一个UWP应用程序,并使用ScrollViewer滚动一些内容。当用户垂直滚动时,我想知道是否有方法检测用户是从上到下滚动还是从下到上滚动(即滚动方向)?如果值增加,您可以从ScrollViewer的VerticalOffset属性获取帮助,以检测移动。用户是从上到下滚动。如果该值正在减小,则用户将从下向上滚动。您可以侦听ScrollViewer的ViewChanged事件并执行必要的逻辑。下面是示例绑定以演示该想法检测UWP应用程序中的滚动方向,uwp,scrollviewer,direction,Uwp,Scrollviewer,Direction,我正在用C#开发一个UWP应用程序,并使用ScrollViewer滚动一些内容。当用户垂直滚动时,我想知道是否有方法检测用户是从上到下滚动还是从下到上滚动(即滚动方向)?如果值增加,您可以从ScrollViewer的VerticalOffset属性获取帮助,以检测移动。用户是从上到下滚动。如果该值正在减小,则用户将从下向上滚动。您可以侦听ScrollViewer的ViewChanged事件并执行必要的逻辑。下面是示例绑定以演示该想法 <Grid Background="{ThemeReso
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Grid.RowDefinitions>
<RowDefinition Height="50"/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock VerticalAlignment="Center" Text="{Binding VerticalOffset, ElementName=tst,Mode=OneWay}"/>
<ScrollViewer Grid.Row="1" x:Name="tst" ViewChanged="tst_ViewChanged">
<StackPanel Background="Gray" Height="2500">
</StackPanel>
</ScrollViewer>
</Grid>
输出:您可以从ScrollViewer的VerticalOffset属性获取帮助,以便在用户从上到下滚动时检测移动。如果该值正在减小,则用户将从下向上滚动。您可以侦听ScrollViewer的ViewChanged事件并执行必要的逻辑。下面是示例绑定以演示该想法
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Grid.RowDefinitions>
<RowDefinition Height="50"/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock VerticalAlignment="Center" Text="{Binding VerticalOffset, ElementName=tst,Mode=OneWay}"/>
<ScrollViewer Grid.Row="1" x:Name="tst" ViewChanged="tst_ViewChanged">
<StackPanel Background="Gray" Height="2500">
</StackPanel>
</ScrollViewer>
</Grid>
输出:看看我的答案。看看我的答案。正如Justin XL和您所指出的,这种方法很有效,对于我的场景来说已经足够好了。感谢Justin XL和您指出的,这种方法很有效,对于我的场景来说已经足够好了。谢谢