VisualStateManager.GoToState(FrameworkElement, String, Boolean) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Transita o controlo entre dois estados. Use este método para transicionar estados no controlo que tenha um 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
O controlo para a transição entre estados.
- stateName
- String
O estado para onde fazer a transição.
- useTransitions
- Boolean
true usar um VisualTransition objeto para transitar entre estados; caso contrário, false.
Devoluções
true se o controlo fizesse a transição com sucesso para o novo estado; caso contrário, false.
Exceções
Exemplos
O exemplo seguinte demonstra um controlo que utiliza o GoToState método para transitar entre estados. Para o exemplo completo, veja Criar um Controlo com Aparência Personalizável.
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
Observações
Chame o GoToState método se estiver a mudar estados num controlo que usa o VisualStateManager no seu ControlTemplate. Chame o GoToElementState método para alterar estados num elemento fora de um ControlTemplate (por exemplo, se usar um VisualStateManager em a UserControl ou num único elemento).