1

关于滚动时如何在gridview上实现视差效果的任何想法?我正在寻找类似于 Windows 主屏幕的效果,在滚动时移动背景图像。

谢谢

4

2 回答 2

2

您需要处理ScrollViewer.ViewChanged用于滚动 GridView 并更新背景中图像的定位。您可以使用WinRT XAML ToolkitVisualTreeHelperExtensions扩展方法获取 ScrollViewer - 本质上

ScrollViewer myScrollViewer = myScrollViewermyGridView.GetFirstDescendantOfType<ScrollViewer>();
myScrollViewer.ViewChanged += UpdateBackgroundImagePosition;
于 2012-05-14T22:20:16.663 回答
0

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

于 2012-06-02T05:09:55.330 回答