VisualStateManager.GoToState(FrameworkElement, String, Boolean) Methode

Definition

Übergibt das Steuerelement zwischen zwei Zuständen. Verwenden Sie diese Methode, um Zustände für Steuerelement mit einem ControlTemplate.

public:
 static bool GoToState(System::Windows::FrameworkElement ^ control, System::String ^ stateName, bool useTransitions);
public static bool GoToState(System.Windows.FrameworkElement control, string stateName, bool useTransitions);
static member GoToState : System.Windows.FrameworkElement * string * bool -> bool
Public Shared Function GoToState (control As FrameworkElement, stateName As String, useTransitions As Boolean) As Boolean

Parameter

control
FrameworkElement

Das Steuerelement, das zwischen den Zuständen wechselt.

stateName
String

Der Zustand, zu dem der Übergang wird.

useTransitions
Boolean

true verwenden, um ein VisualTransition Objekt für den Übergang zwischen Zuständen zu verwenden; andernfalls false.

Gibt zurück

truewenn das Steuerelement erfolgreich in den neuen Zustand umgestellt wurde; andernfalls . false

Ausnahmen

control ist null.

-oder-

stateName ist null.

Beispiele

Das folgende Beispiel veranschaulicht ein Steuerelement, das die GoToState Methode für den Übergang zwischen Zuständen verwendet. Das gesamte Beispiel finden Sie unter Erstellen eines Steuerelements, das über eine anpassbare Darstellung verfügt.

private void UpdateStates(bool useTransitions)
{
    if (Value >= 0)
    {
        VisualStateManager.GoToState(this, "Positive", useTransitions);
    }
    else
    {
        VisualStateManager.GoToState(this, "Negative", useTransitions);
    }

    if (IsFocused)
    {
        VisualStateManager.GoToState(this, "Focused", useTransitions);
    }
    else
    {
        VisualStateManager.GoToState(this, "Unfocused", useTransitions);
    }
}
Private Sub UpdateStates(ByVal useTransitions As Boolean)

    If Value >= 0 Then
        VisualStateManager.GoToState(Me, "Positive", useTransitions)
    Else
        VisualStateManager.GoToState(Me, "Negative", useTransitions)
    End If

    If IsFocused Then
        VisualStateManager.GoToState(Me, "Focused", useTransitions)
    Else
        VisualStateManager.GoToState(Me, "Unfocused", useTransitions)

    End If
End Sub

Hinweise

Rufen Sie die GoToState Methode auf, wenn Sie Zustände in einem Steuerelement ändern, das das VisualStateManager Steuerelement verwendet ControlTemplate. Rufen Sie die GoToElementState Methode auf, um Zustände für ein Element außerhalb eines ControlTemplate Elements zu ändern (z. B. wenn Sie ein VisualStateManager Element in einem UserControl oder in einem einzelnen Element verwenden).

Gilt für: