XAML图像被切断了

时间:2015-04-05 21:07:22

标签: c# xaml windows-phone-8.1

在XAML中,我试图制作一幅被剪切为背景的大图像,以便在屏幕上慢慢移动,直到到达其他地方的图像。问题是图像总是不比显示器大,即使它被拉伸了。所以我留下了一个图像,屏幕的大小以黑色背景移动。

        <Image x:Name="background" HorizontalAlignment="Left" Grid.Row="1" Width="1500" Stretch="Fill" MaxWidth="1500" MinWidth="1500">
        <Image.RenderTransform>
                <TranslateTransform x:Name="bgTranslate" X="0"></TranslateTransform>
            </Image.RenderTransform>
        </Image>

1 个答案:

答案 0 :(得分:2)

Grid控件使用可用的单元格大小排列Image。然后,在应用任何RenderTransform之前,Image控件会截断排列矩形外部的图像部分(因此不可见)。

一个简单的解决方法是将图像放入画布中,该画布将其子元素排列为所需的大小:

<Grid ...>
    ...
    <Canvas Grid.Row="1">
        <Image x:Name="background" Width="1500">
            <Image.RenderTransform>
                <TranslateTransform x:Name="bgTranslate"/>
            </Image.RenderTransform>
        </Image>
    </Canvas>
    ...
</Grid>