了解ParallaxView的工作原理

时间:2019-02-24 15:14:30

标签: uwp

我试图用下面的例子来包裹ParallaxView:

    <Grid Background="Yellow"
          Width="500"
          Height="300">
        <ParallaxView VerticalShift="0"
                      HorizontalShift="500"
                      Source="{x:Bind scrollView}">
            <StackPanel Orientation="Horizontal"
                        Height="300">
                <Border Width="500" 
                        Background="Red"/>
                <Border Width="500" 
                        Background="Blue"/>
            </StackPanel>
        </ParallaxView>
        <ScrollViewer x:Name="scrollView"
                      HorizontalScrollBarVisibility="Auto">
            <Border Background="Transparent"
                    Width="1000"
                    Height="300" />
        </ScrollViewer>
    </Grid>

因此,视差视图具有一个水平StackPanel,其中有两个Border,每个Border宽为500px。

用作ParallaxView源的ScrollViewer具有透明的Border,其宽度与StackPanel(1000px)相同。

请注意,我将Horizo​​ntalShift设置为500,所以我期望ParallaxView将StackPanel水平滚动500 px。我希望看到第二个边框从左边距开始。

运行该应用程序时,没有任何滚动,我已经看到了第二边框的一点点,看起来ParallaxView已经以某种方式滚动了StackPanel:

enter image description here

为什么会这样?为什么ParallaxView在开始时会水平滚动StackPanel?

0 个答案:

没有答案