Freigeben über


VisualTransition.GeneratedEasingFunction Eigenschaft

Definition

Ruft eine benutzerdefinierte mathematische Formel ab, die für Übergange zwischen Zuständen verwendet wird, oder legt sie fest.

public:
 property System::Windows::Media::Animation::IEasingFunction ^ GeneratedEasingFunction { System::Windows::Media::Animation::IEasingFunction ^ get(); void set(System::Windows::Media::Animation::IEasingFunction ^ value); };
public System.Windows.Media.Animation.IEasingFunction GeneratedEasingFunction { get; set; }
member this.GeneratedEasingFunction : System.Windows.Media.Animation.IEasingFunction with get, set
Public Property GeneratedEasingFunction As IEasingFunction

Eigenschaftswert

Eine benutzerdefinierte mathematische Formel, die für Übergange zwischen Zuständen verwendet wird.

Beispiele

Im folgenden Beispiel wird ein VisualTransition erstellt, das dazu führt, dass sich ein Rectangle vertikal bewegt, wenn der Benutzer die Maustaste über das Canvasdrückt. Im Beispiel wird die GeneratedEasingFunction -Eigenschaft auf ein BounceEase -Objekt festgelegt, damit der Rectangle angezeigt wird, dass es abspringt, wenn es sein Ziel erreicht. Die VisualTransition , die verwendet wird, wenn der Benutzer die Schaltfläche loslässt, verfügt über ein anderes BounceEase Objekt, das bewirkt, dass die Rectangle zurück zur ursprünglichen Position zurückgeprallt wird.

<Canvas Name="canvasRoot" Background="Tan" Width="100" Height="250"
        MouseDown="Canvas_MouseEvent" MouseUp="Canvas_MouseEvent">

  <VisualStateManager.VisualStateGroups>
    <VisualStateGroup Name="CanvasStates">
      <VisualState Name="CanvasButtonUp" />
      <VisualState Name="CanvasButtonDown">
        <Storyboard>
          <!--The VisualTransition is responsible for animating the
              Rectangle falling. This DoubleAnitmation specifies where
              the Rectangle is when the animation completes.-->
          <DoubleAnimation To="200" 
                           Storyboard.TargetName="myRectangle" 
                           Storyboard.TargetProperty="(Canvas.Top)"/>
        </Storyboard>
      </VisualState>
      <VisualStateGroup.Transitions>
        <VisualTransition To="CanvasButtonUp" GeneratedDuration="00:00:01">
          <VisualTransition.GeneratedEasingFunction>
            <BounceEase Bounces="4" EasingMode="EaseIn" Bounciness="2"/>
          </VisualTransition.GeneratedEasingFunction>
        </VisualTransition>
        <VisualTransition To="CanvasButtonDown" GeneratedDuration="00:00:01">
          <VisualTransition.GeneratedEasingFunction>
            <BounceEase Bounces="3" EasingMode="EaseOut" Bounciness="2"/>
          </VisualTransition.GeneratedEasingFunction>
        </VisualTransition>

      </VisualStateGroup.Transitions>
    </VisualStateGroup>
  </VisualStateManager.VisualStateGroups>

  <Rectangle Name="myRectangle"  
             Canvas.Top="30" Canvas.Left="30"
             Fill="Blue" Width="30" Height="30"/>
</Canvas>

Das folgende Beispiel zeigt den Ereignishandler für die MouseDown Ereignisse und MouseUp . Im Beispiel wird die GoToElementState -Methode aufgerufen, um die der VisualState Canvas zu ändern.

bool isMouseDown;

private void Canvas_MouseEvent(object sender, MouseEventArgs e)
{
    isMouseDown = !isMouseDown;

    if (isMouseDown)
    {
        VisualStateManager.GoToElementState(canvasRoot, "CanvasButtonDown", true);
    }
    else
    {
        VisualStateManager.GoToElementState(canvasRoot, "CanvasButtonUp", true);
    }
}
Private isMouseDown As Boolean

Private Sub Canvas_MouseEvent(ByVal sender As Object, ByVal e As MouseEventArgs)

    isMouseDown = Not isMouseDown

    If isMouseDown Then
        VisualStateManager.GoToElementState(canvasRoot, "CanvasButtonDown", True)
    Else

        VisualStateManager.GoToElementState(canvasRoot, "CanvasButtonUp", True)
    End If
End Sub

Hinweise

Sie können die GeneratedEasingFunction -Eigenschaft festlegen, um anzugeben, wie ein Übergang erfolgt. Sie können beispielsweise eine Beschleunigungsfunktion angeben, um den Übergang zu beschleunigen oder zu verlangsamen. Weitere Informationen finden Sie unter Beschleunigungsfunktionen.

Gilt für: