Nasıl yapılır: Bir Olay Oluştuğunda Öğeye Dönüşüm Uygulama
Bu örnekte, bir olay gerçekleştiğinde nasıl ScaleTransform uygulanacağı gösterilmektedir. Burada gösterilen kavram, diğer dönüştürme türlerini uygulamak için kullandığınız kavramla aynıdır. Kullanılabilir dönüştürme türleri hakkında daha fazla bilgi için sınıfa veya Dönüşümlere Genel Bakış'a bakınTransform.
Bir öğeye dönüştürmeyi şu iki yoldan biriyle uygulayabilirsiniz:
Dönüşümün düzeni etkilemesini istemiyorsanız öğesinin RenderTransform özelliğini kullanın.
Dönüşümün düzeni etkilemesini istiyorsanız öğesinin LayoutTransform özelliğini kullanın.
Aşağıdaki örnek, ScaleTransform bir düğmenin RenderTransform özelliğine bir uygular. Fare düğmenin üzerine geldiğinde ve ScaleXScaleY özellikleri ScaleTransform olarak ayarlanır 2
ve bu da düğmenin daha büyük olmasına neden olur. Fare düğmenin dışına çıktığında ve ScaleY olarak ayarlandığında1
, ScaleX düğmenin özgün boyutuna dönmesine neden olur.
Örnek
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="WCSample.TransformExample"
WindowTitle="Transform on Mouse Enter Example">
<Canvas Width="400" Height="400">
<Button Name="Button1" MouseEnter="Enter" MouseLeave="Leave">
<Button.RenderTransform>
<ScaleTransform x:Name="myScaleTransform" ScaleX="1" ScaleY="1" />
</Button.RenderTransform>
Button
</Button>
</Canvas>
</Page>
public partial class TransformExample : Page {
private void Enter(object sender, MouseEventArgs args) {
myScaleTransform.ScaleX = 2;
myScaleTransform.ScaleY = 2;
}
private void Leave(object sender, MouseEventArgs args) {
myScaleTransform.ScaleX = 1;
myScaleTransform.ScaleY = 1;
}
}
Partial Public Class TransformExample
Inherits Page
Private Sub Enter(ByVal sender As Object, ByVal args As System.Windows.Input.MouseEventArgs)
myScaleTransform.ScaleX = 2
myScaleTransform.ScaleY = 2
End Sub
Private Sub Leave(ByVal sender As Object, ByVal e As System.Windows.Input.MouseEventArgs)
myScaleTransform.ScaleX = 1
myScaleTransform.ScaleY = 1
End Sub
End Class
Ayrıca bkz.
.NET Desktop feedback