关于滚动时如何在gridview上实现视差效果的任何想法?我正在寻找类似于 Windows 主屏幕的效果,在滚动时移动背景图像。
谢谢
关于滚动时如何在gridview上实现视差效果的任何想法?我正在寻找类似于 Windows 主屏幕的效果,在滚动时移动背景图像。
谢谢
您需要处理ScrollViewer.ViewChanged用于滚动 GridView 并更新背景中图像的定位。您可以使用WinRT XAML Toolkit的VisualTreeHelperExtensions扩展方法获取 ScrollViewer - 本质上
ScrollViewer myScrollViewer = myScrollViewermyGridView.GetFirstDescendantOfType<ScrollViewer>();
myScrollViewer.ViewChanged += UpdateBackgroundImagePosition;
1)将您的 ScrollViewer 命名为 MyScrollviewer
2) 将 RenderTransform 添加到您的后台用户界面元素,如下所示:
<your background.RenderTransform>
<CompositeTransform TranslateX="{Binding ElementName=MyScrollViewer, Path=HorizontalOffset, Converter={StaticResource ParallaxConverter}}" />
</your background.RenderTransform>
3)实现一个ParallaxConveter(乘以-.1)
有关详细信息,请参阅http://w8isms.blogspot.com/2012/06/metro-parallax-background-in-xaml.html。