Compartir a través de


VisualStateManager.GoToState(FrameworkElement, String, Boolean) Método

Definición

Realiza la transición del control entre dos estados. Use este método para pasar de un estado a otro los controles que tengan 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

Parámetros

control
FrameworkElement

Control del que se va a realizar la transición entre estados.

stateName
String

El estado al que se realiza la transición.

useTransitions
Boolean

Es true para usar un objeto VisualTransition en la transición entre estados; de lo contrario, es false.

Devoluciones

true si el control ha realizado correctamente la transición al nuevo estado; de lo contrario, false.

Excepciones

control es null.

o bien

stateName es null.

Ejemplos

En el ejemplo siguiente se muestra un control que usa el GoToState método para realizar la transición entre estados. Para obtener todo el ejemplo, vea Crear un control que tenga una apariencia personalizable.

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

Comentarios

Llame al GoToState método si cambia los estados de un control que usa en VisualStateManager su ControlTemplate. Llame al GoToElementState método para cambiar los estados de un elemento fuera de un ControlTemplate elemento (por ejemplo, si usa en VisualStateManager un UserControl elemento o en un solo elemento).

Se aplica a