以不同的速度滚动gridview行

以不同的速度滚动gridview行,gridview,scroll,winrt-xaml,Gridview,Scroll,Winrt Xaml,我想为winrt创建一个gridview,每行的滚动速度不同,但如果有人能帮我的话,我不知道怎么做 有一个你想做什么的例子。它显示了如何以视差方式显示栅格。它是为scrollviewer编写的,但文章说这种方法也可以应用于gridview和listview 代码如下: <Grid> <Image x:Name="backImage" Margin="0,0,0,30" HorizontalAlignment="Left" Vert

我想为winrt创建一个gridview,每行的滚动速度不同,但如果有人能帮我的话,我不知道怎么做

有一个你想做什么的例子。它显示了如何以视差方式显示栅格。它是为scrollviewer编写的,但文章说这种方法也可以应用于gridview和listview

代码如下:

<Grid>
       <Image x:Name="backImage" Margin="0,0,0,30" 
                HorizontalAlignment="Left" VerticalAlignment="Bottom" 
                Source="/Assets/parallax_people.png" Width="2250" Height="200" Opacity="0.5" />

        <ScrollViewer x:Name="hScroll" 
                      Style="{StaticResource HorizontalScrollViewerStyle}" Margin="0">
            <!-- insert your content here -->
        </ScrollViewer>
   </Grid>

如果希望每一行都有不同的速度,则可以随机调整滚动速度。

我唯一能想到的是可能挂接GridView的操纵增量事件,并影响GridView的子ScrollViewer,您可以通过按操纵DeltaRouteDeventargs.Delta.Translation.X操纵的X平移。我根本不知道这会有多顺利,考虑到触摸输入滚动的预期用途是让同一个点始终在你的手指下,这可能是不和谐的。你可以考虑使用一个语义缩放来更快的列表遍历。我的需求比视差滚动更复杂,我需要一个多行的GRIDVIEW,并且每一行以不同的速度滚动到它的下一行。有什么例子吗?[这是一个针对IOS的列演示,我正在尝试对行执行相同的操作,行数是可变的。
private void hScroll_ViewChanged(object sender, ScrollViewerViewChangedEventArgs e)
    {
        var delta = (this.hScroll.HorizontalOffset / this.hScroll.ScrollableWidth) * (backImage.ActualWidth - this.hScroll.ViewportWidth);
        this.backImage.Margin = new Thickness(-delta, 0, 0, 30);
    }