VisualStateManager.GoToStateCore Метод

Определение

Переводит элемент управления из одного состояния в другое.

protected:
 virtual bool GoToStateCore(System::Windows::FrameworkElement ^ control, System::Windows::FrameworkElement ^ stateGroupsRoot, System::String ^ stateName, System::Windows::VisualStateGroup ^ group, System::Windows::VisualState ^ state, bool useTransitions);
protected virtual bool GoToStateCore (System.Windows.FrameworkElement control, System.Windows.FrameworkElement stateGroupsRoot, string stateName, System.Windows.VisualStateGroup group, System.Windows.VisualState state, bool useTransitions);
abstract member GoToStateCore : System.Windows.FrameworkElement * System.Windows.FrameworkElement * string * System.Windows.VisualStateGroup * System.Windows.VisualState * bool -> bool
override this.GoToStateCore : System.Windows.FrameworkElement * System.Windows.FrameworkElement * string * System.Windows.VisualStateGroup * System.Windows.VisualState * bool -> bool
Protected Overridable Function GoToStateCore (control As FrameworkElement, stateGroupsRoot As FrameworkElement, stateName As String, group As VisualStateGroup, state As VisualState, useTransitions As Boolean) As Boolean

Параметры

control
FrameworkElement

Элемент управления, переводимый из одного состояния в другое.

stateGroupsRoot
FrameworkElement

Корневой элемент, содержащий объект VisualStateManager.

stateName
String

Имя состояния, в которое требуется перейти.

group
VisualStateGroup

Объект VisualStateGroup, к которому относится данное состояние.

state
VisualState

Представление состояния, в которое требуется перейти.

useTransitions
Boolean

Значение true, если для перехода между состояниями необходимо использовать объект VisualTransition; в противном случае — значение false.

Возвращаемое значение

Значение true, если элемент управления успешно перешел в новое состояние; в противном случае — значение false.

Комментарии

Метод GoToStateCore выполняет логику, необходимую для правильного запуска и остановки раскадровок, связанных с переходом. Если элемент управления вызывает метод GoToState для изменения своего состояния, элемент VisualStateManager выполняет следующие действия:

  • Во-первых, если объект VisualState , к которому переходит элемент управления, имеет Storyboard, раскадровка начинается. Если состояние VisualState, из которого переходит элемент управления, имеет элемент Storyboard, раскадровка заканчивается.

  • Если элемент управления уже находится в stateName состоянии , GoToState не выполняет никаких действий и возвращает .true

  • Если stateName не существует в ControlTemplatecontrol, GoToState не выполняет никаких действий и возвращает .false

Вы можете реализовать собственную VisualStateManager , чтобы предоставить другую логику для перехода между состояниями. Например, можно изменить описанную выше логику или предоставить логику для перехода между пользовательскими типами анимации. Чтобы реализовать VisualStateManager, создайте класс, который наследует от VisualStateManager и переопределите GoToStateCore метод . Чтобы использовать пользовательский класс, задайте для CustomVisualStateManager свойства объект пользовательского типа.

Применяется к