[XAML-WP8.1]网格视图背景图像剪辑到边界

时间:2015-07-15 17:24:31

标签: wpf xaml gridview windows-phone windows-phone-8.1

我是Windows开发的新手,也是Windows Phone开发的新手。

我正在尝试创建一个由三个单元格组成的网格视图。 每个网格视图由一个图像(用于背景)和一个文本块组成。

我的背景图像是云图像,我希望第一个图像被第二个图像隐藏,第二个图像被第三个图像部分隐藏。

我尝试使用y部分的单元格边缘,这是有效的,但我的云图像不会使我的单元格的整个宽度。所以我尝试了“UnifirmToFill”选项,但我的图像被裁剪了......

在iOS开发中,在这种情况下我们可以使用魔法属性“ClipToBounds”,无处不在我看到答案“使用剪辑绑定属性”但显然这个属性是传说或Visual Studio骗我...

你有想法解决我的问题吗?

提前谢谢!

要恢复: 如果我使用“uniformToFill”拉伸选项,我的图像会被缩放。对我来说没关系。

但是有一种方法可以显示裁剪的部分吗?我希望我的图像缩放并显示出单元格视图。

1 个答案:

答案 0 :(得分:0)

在XAML中,有四种可能的Stretch选项:

<强>无
图像以原始大小显示。如果它大于父元素,它只显示适合内部的图像的左上部分。如果图片小于父元素,那么它就会全部显示出来。

<强>填充
调整图像大小以填充父元素。如果纵横比不同,则图像将被拉伸以适合父图像。这会扭曲图像。

<强>均匀
图像将按比例放大,同时仍然完全在父图像内部。与 Fill 不同,它会拉伸图像以使其完美贴合, Uniform 将保持图像的纵横比,并在达到父图像的边界时停止缩放。

<强> UniformToFill 这是前两个孩子的私生子。它将缩放图像,同时保持纵横比,直到它填充父元素。这意味着如果宽高比不同,图像的某些部分将被剪裁。

有关Stretch枚举的详细信息,请点击MSDN

<强>更新
如果你想在父母的边界之外显示图像,你可以这样做:

<Grid Width="100" Height="50">
    <Grid.Clip>
        <RectangleGeometry Rect="0 0 100 50"/>
    </Grid.Clip>
</Grid>

建议here on SO