Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este exemplo mostra como usar uma ScaleTransform para inverter um UIElement horizontalmente ou verticalmente. Nesse exemplo, um controle Button (um tipo de UIElement) é invertido aplicando uma ScaleTransform a sua propriedade RenderTransform.
Exemplo
A ilustração a seguir mostra o botão a inverter.
O UIElement a inverter
.gif)
A seguir temos o código que cria o botão.
<Button Content="Flip me!" Padding="5">
</Button>
Para inverter horizontalmente no botão, crie um ScaleTransform e defina seu ScaleX propriedade como -1. Aplicar o ScaleTransform para o botão RenderTransform propriedade.
<Button Content="Flip me!" Padding="5">
<Button.RenderTransform>
<ScaleTransform ScaleX="-1" />
</Button.RenderTransform>
</Button>
O botão após a aplicação de ScaleTransform
.gif)
Como você pode ver na ilustração anterior, o botão foi invertido, mas ele também foi movido. Isso acontece porque o botão foi virado a partir do seu canto superior esquerdo. Para inverter o botão no mesmo lugar, você precisa aplicar a ScaleTransform a seu centro, não a seu canto. Uma maneira fácil de aplicar a ScaleTransform ao centro do botão é definir a propriedade RenderTransformOrigin do botão como 0,5, 0,5.
<Button Content="Flip me!" Padding="5"
RenderTransformOrigin="0.5,0.5">
<Button.RenderTransform>
<ScaleTransform ScaleX="-1" />
</Button.RenderTransform>
</Button>
O botão com uma RenderTransformOrigin de 0,5, 0,5
.gif)
Para inverter verticalmente o botão, defina a propriedade ScaleY do objeto ScaleTransform em vez de sua propriedade ScaleX.
<Button Content="Flip me!" Padding="5"
RenderTransformOrigin="0.5,0.5">
<Button.RenderTransform>
<ScaleTransform ScaleY="-1" />
</Button.RenderTransform>
</Button>
Botão invertido verticalmente
.gif)