0

我试图在我的实际内容后面有一个视差移动的图像背景。我根据约翰的解决方案添加了一个转换器: http ://w8isms.blogspot.com/2012/09/parallax-background-in-xaml-revisited.html

视差滚动部分工作正常,虽然我偶然发现了以下问题 - 初始应用程序屏幕区域之外的图像被截断,所以当我向右滚动时,只有白色区域开始出现,而不是其余图像,因为这些内容必须重新绘制。有人知道我可以做些什么来解决它吗?

这是我的代码:

<Grid Background="White">        
    <StackPanel Orientation="Horizontal">
        <StackPanel.RenderTransform>
            <CompositeTransform
               TranslateX="{Binding ElementName=MyScrollViewer, Path=HorizontalOffset, Converter={StaticResource ParallaxConverter}}" />
        </StackPanel.RenderTransform>
        <Image Source="1.jpg"/>
        <Image Source="2.jpg"/>
        <Image Source="3.jpg"/>
    </StackPanel>
    <ScrollViewer
       x:Name="MyScrollViewer"
       HorizontalScrollMode="Enabled"
       HorizontalScrollBarVisibility="Auto">
        <TextBlock
           VerticalAlignment="Center"
           FontSize="180"
           Text="Hello world! This text will extend to the right." />
    </ScrollViewer>
</Grid>
4

1 回答 1

0

解决它!必须将我的 StackPanel 包装在 Canvas 元素中。

于 2013-01-08T10:57:33.963 回答