VisualStateManager.GoToState(FrameworkElement, String, Boolean) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перемещает элемент управления между двумя состояниями. Используйте этот метод для перехода состояний на элемент управления с элементом 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
Параметры
- control
- FrameworkElement
Элемент управления для перехода между состояниями.
- stateName
- String
Состояние для перехода.
- useTransitions
- Boolean
true Значение VisualTransition , чтобы использовать объект для перехода между состояниями; в противном случае false.
Возвращаемое значение
true Значение , если элемент управления успешно перейдет в новое состояние; falseв противном случае .
Исключения
Примеры
В следующем примере демонстрируется элемент управления, использующий GoToState метод для перехода между состояниями. Полный пример см. в разделе "Создание элемента управления с настраиваемым внешним видом".
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
Комментарии
GoToState Вызовите метод, если вы изменяете состояния в элементе управления, который использует VisualStateManager егоControlTemplate. GoToElementState Вызовите метод для изменения состояний элемента за пределами ControlTemplate элемента (например, если вы используете VisualStateManager его в UserControl одном элементе или в одном элементе).