Xaml Windows 8 GridView-视差背景图像

Xaml Windows 8 GridView-视差背景图像,xaml,windows-8,windows-runtime,winrt-xaml,Xaml,Windows 8,Windows Runtime,Winrt Xaml,你知道如何在滚动gridview时在其上实现视差效果吗? 我正在寻找一种类似于windows主屏幕的效果,在滚动时移动背景图像 谢谢您需要在ScrollViewer上处理用于滚动GridView和更新图像在背景中的位置的。您可以使用的扩展方法获取ScrollViewer-基本上 ScrollViewer myScrollViewer = myScrollViewermyGridView.GetFirstDescendantOfType<ScrollViewer>(); myScrol

你知道如何在滚动gridview时在其上实现视差效果吗? 我正在寻找一种类似于windows主屏幕的效果,在滚动时移动背景图像


谢谢

您需要在ScrollViewer上处理用于滚动GridView和更新图像在背景中的位置的。您可以使用的扩展方法获取ScrollViewer-基本上

ScrollViewer myScrollViewer = myScrollViewermyGridView.GetFirstDescendantOfType<ScrollViewer>();
myScrollViewer.ViewChanged += UpdateBackgroundImagePosition;
ScrollViewer myScrollViewer=myScrollViewermyGridView.GetFirstDegenantofType(); 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) 实现视差放大(乘以-0.1)


有关详细信息,请参阅。

谢谢您的回复。实际上,我可以根据Scrollviewer的水平偏移量使用TranslateTransform移动图像控件,但是当完全向右滚动时,图像会被剪切(当然)。我想重复图像是的,TranslateTransform只转换屏幕上其他渲染的内容。您可以将图像放置在类似网格的位置,并操纵图像的边距以移动图像,或使用画布和操纵画布。Left属性。“1)将您的ScrollViewer命名为类似MyScrollviewer的名称”只有GridView