Bagikan melalui


VisualStateManager.GoToState(FrameworkElement, String, Boolean) Metode

Definisi

Transisi kontrol antara dua status. Gunakan metode ini untuk transisi status pada kontrol yang memiliki 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

Parameter

control
FrameworkElement

Kontrol untuk transisi antar status.

stateName
String

Status ke transisi.

useTransitions
Boolean

true untuk menggunakan VisualTransition objek untuk transisi antar status; jika tidak, false.

Mengembalikan

true jika kontrol berhasil ditransisikan ke status baru; jika tidak, false.

Pengecualian

controladalah null.

-atau-

stateNameadalah null.

Contoh

Contoh berikut menunjukkan kontrol yang menggunakan GoToState metode untuk transisi antar status. Untuk seluruh contoh, lihat Membuat Kontrol yang Memiliki Tampilan yang Dapat Disesuaikan.

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

Keterangan

GoToState Panggil metode jika Anda mengubah status dalam kontrol yang menggunakan VisualStateManager di dalamnya ControlTemplate. GoToElementState Panggil metode untuk mengubah status pada elemen di luar ControlTemplate (misalnya, jika Anda menggunakan VisualStateManager dalam UserControl atau dalam satu elemen).

Berlaku untuk