以不同的速度滚动gridview行
我想为winrt创建一个gridview,每行的滚动速度不同,但如果有人能帮我的话,我不知道怎么做 有一个你想做什么的例子。它显示了如何以视差方式显示栅格。它是为scrollviewer编写的,但文章说这种方法也可以应用于gridview和listview 代码如下:以不同的速度滚动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
<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);
}