VisualStateManager.GoToState(FrameworkElement, String, Boolean) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
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).