Condividi tramite


VisualStateManager.GoToState(FrameworkElement, String, Boolean) Metodo

Definizione

Esegue la transizione del controllo tra due stati. Utilizzare questo metodo per eseguire la transizione di stati su un controllo che ha un oggetto 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

Parametri

control
FrameworkElement

Controllo che deve eseguire la transizione tra stati.

stateName
String

Stato finale della transizione.

useTransitions
Boolean

true per utilizzare un oggetto VisualTransition per eseguire la transizione tra stati; in caso contrario, false.

Restituisce

true se il controllo ha eseguito correttamente la transizione al nuovo stato. In caso contrario, false.

Eccezioni

control è null.

-oppure-

stateName è null.

Esempio

Nell'esempio seguente viene illustrato un controllo che usa il metodo per eseguire la GoToState transizione tra stati. Per l'intero esempio, vedere Creazione di un controllo con un aspetto personalizzabile.

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

Commenti

Chiamare il GoToState metodo se si modificano gli stati in un controllo che usa in VisualStateManager .ControlTemplate Chiamare il GoToElementState metodo per modificare gli stati di un elemento all'esterno di un ControlTemplate oggetto , ad esempio se si usa un VisualStateManager oggetto in un UserControl oggetto o in un singolo elemento.

Si applica a