如何:水平或垂直翻转 UIElement
此示例演示如何使用 ScaleTransform 水平或垂直翻转 UIElement。 在此示例中,通过将 ScaleTransform 应用于其 RenderTransform 属性来翻转 Button 控件(一种 UIElement)。
翻转按钮的插图
下图显示了要翻转的按钮。
要翻转的 UIElement
下面显示了创建按钮的代码。
<Button Content="Flip me!" Padding="5">
</Button>
水平翻转按钮的插图
若要水平翻转按钮,请创建一个 ScaleTransform 并将其 ScaleX 属性设置为 -1。 将 ScaleTransform 应用到按钮的 RenderTransform 属性。
<Button Content="Flip me!" Padding="5">
<Button.RenderTransform>
<ScaleTransform ScaleX="-1" />
</Button.RenderTransform>
</Button>
应用 ScaleTransform 后的按钮
在原位翻转按钮的插图
从上图中可以看出,按钮已翻转,但同时进行了移动。 那是因为按钮是绕左上角翻转的。 若要将按钮就地翻转,需要将 ScaleTransform 应用到其中心,而不是其角。 将 ScaleTransform 应用于按钮中心的一种简单方法是将按钮的 RenderTransformOrigin 属性设置为“0.5, 0.5”。
<Button Content="Flip me!" Padding="5"
RenderTransformOrigin="0.5,0.5">
<Button.RenderTransform>
<ScaleTransform ScaleX="-1" />
</Button.RenderTransform>
</Button>
RenderTransformOrigin 为“0.5, 0.5”的按钮
垂直翻转按钮的插图
若要垂直翻转按钮,请设置 ScaleTransform 对象的 ScaleY 属性而不是其 ScaleX 属性。
<Button Content="Flip me!" Padding="5"
RenderTransformOrigin="0.5,0.5">
<Button.RenderTransform>
<ScaleTransform ScaleY="-1" />
</Button.RenderTransform>
</Button>
垂直翻转按钮