如何将ImageBrush锚定到元素的左下角?

时间:2011-04-03 16:37:13

标签: wpf imagebrush

我想在WPF元素中使用ImageBrush,我希望它能够平铺。但我希望图像与控件的左下角对齐,而不是左上角。也就是说,代替最顶部的瓷砖的顶部甚至是控件的顶部,而底部的部分瓷砖,我想要反过来:最底部的瓷砖的底部,即使是底部的控件和顶部的部分图块。我怎么能这样做?

这是一些重复图像的XAML,但它将它固定在控件的左上角:

<Rectangle>
  <Rectangle.Fill>
    <ImageBrush ImageSource="C:\Temp\triangle.png"
                Viewport="0 0 31 31"
                ViewportUnits="Absolute"
                TileMode="Tile"/>
  </Rectangle.Fill>
</Rectangle>

这里有一个例子,说明了它的作用,以及我正在寻找的内容(包括我希望在元素调整大小时发生的事情):

http://www.excastle.com/misc/ImageBrushBottomLeft2.png

如何将平铺图像锚定到元素的底部而不是顶部(并确保它们保持锚定在底部,即使元素调整大小)?

1 个答案:

答案 0 :(得分:0)

“最简单”的方法是计算其他视口坐标。

如果图像是20x20:Viewport =“0 11 31 31”我可能会错误地使用几个单位。