Share via


VisualStateManager.GoToState(FrameworkElement, String, Boolean) Yöntem

Tanım

Denetimi iki durum arasında geçişler. denetimindeki ControlTemplatedurumlara geçiş yapmak için bu yöntemi kullanın.

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

Parametreler

control
FrameworkElement

Durumlar arasında geçiş denetimi.

stateName
String

Geçiş için durum.

useTransitions
Boolean

true durumlar arasında geçiş yapmak için bir VisualTransition nesne kullanmak; aksi takdirde, false.

Döndürülenler

true denetim başarıyla yeni duruma geçirildiyse; aksi takdirde , false.

Özel durumlar

control, null değeridir.

-veya-

stateName, null değeridir.

Örnekler

Aşağıdaki örnekte, durumlar arasında geçiş yapmak için yöntemini kullanan GoToState bir denetim gösterilmektedir. Tüm örnek için bkz. Özelleştirilebilir Görünüme Sahip Bir Denetim Oluşturma.

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

Açıklamalar

GoToState içinde kullanan bir denetimde VisualStateManager durumları değiştiriyorsanız yöntemini çağırınControlTemplate. öğesinin GoToElementState dışındaki ControlTemplate bir öğedeki durumları değiştirmek için yöntemini çağırın (örneğin, içinde veya tek bir öğe kullanıyorsanız UserControlVisualStateManager).

Şunlara uygulanır