Freigeben über


Vorgehensweise: Anwenden einer Transformation auf ein Element, wenn ein Ereignis auftritt

Dieses Beispiel zeigt, wie ein ScaleTransform angewendet wird, wenn ein Ereignis eintritt. Das hier gezeigte Konzept ist identisch mit der Anwendung anderer Transformationstypen. Weitere Informationen zu den verfügbaren Transformationstypen finden Sie in der Übersicht über die Transform Klasse oder Transformationen.

Sie können eine Transformation auf ein Element auf eine der folgenden beiden Arten anwenden:

  • Wenn sich die Transformation nicht auf das Layout auswirken soll, verwenden Sie die RenderTransform Eigenschaft des Elements.

  • Wenn sich die Transformation auf das Layout auswirken soll, verwenden Sie die LayoutTransform Eigenschaft des Elements.

Im folgenden Beispiel wird eine ScaleTransform auf die RenderTransform Eigenschaft einer Schaltfläche angewendet. Wenn die Maus über die Schaltfläche bewegt wird, werden die Eigenschaften ScaleX und ScaleY des ScaleTransform auf 2 gesetzt, wodurch die Schaltfläche größer wird. Wenn die Maus vom Button wegbewegt wird, werden ScaleX und ScaleY auf 1 gesetzt, wodurch der Button zu seiner ursprünglichen Größe zurückkehrt.

Beispiel

<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

Siehe auch