VisualTransition.GeneratedEasingFunction Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví vlastní matematický vzorec, který se používá k přechodu mezi stavy.
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
Hodnota vlastnosti
Vlastní matematický vzorec, který slouží k přechodu mezi stavy.
Příklady
Následující příklad vytvoří VisualTransition objekt, který způsobí Rectangle svislý pohyb, když uživatel stiskne tlačítko myši nad Canvas. Příklad nastaví GeneratedEasingFunction vlastnost objektu BounceEase , aby Rectangle se zdá, že se odrazí, když dosáhne svého cíle. Objekt VisualTransition , který se používá, když uživatel uvolní tlačítko, má jiný BounceEase objekt, který způsobí Rectangle , že se odrazí, než se vrátí na původní pozici.
<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>
Následující příklad ukazuje obslužnou rutinu MouseDown události pro události a MouseUp . Příklad volá metodu GoToElementState pro změnu VisualState plátna.
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
Poznámky
Vlastnost můžete nastavit tak GeneratedEasingFunction , aby určila způsob, jakým k přechodu dochází. Můžete například zadat funkci pro usnadnění, která přechod zrychlí nebo zpomalí. Další informace najdete v tématu Funkce pro usnadnění.