VisualStateManager.GoToState(FrameworkElement, String, Boolean) Metod

Definition

Övergår kontrollen mellan två tillstånd. Använd den här metoden för att överföra tillstånd för kontroll som har en 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

Parametrar

control
FrameworkElement

Kontrollen för att överföra mellan tillstånd.

stateName
String

Tillståndet att övergå till.

useTransitions
Boolean

trueom du vill använda ett VisualTransition objekt för att övergå mellan tillstånd, annars . false

Returer

trueom kontrollen har övergått till det nya tillståndet. annars . false

Undantag

control är null.

-eller-

stateName är null.

Exempel

I följande exempel visas en kontroll som använder GoToState metoden för att överföra mellan tillstånd. Hela exemplet finns i Skapa en kontroll som har ett anpassningsbart utseende.

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

Kommentarer

GoToState Anropa metoden om du ändrar tillstånd i en kontroll som använder VisualStateManager i dess ControlTemplate. GoToElementState Anropa metoden för att ändra tillstånd för ett element utanför ett ControlTemplate (till exempel om du använder en VisualStateManager i ett UserControl eller i ett enda element).

Gäller för