VisualStateManager.GoToStateCore Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Transitions a control between states.
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
Parameters
- control
- FrameworkElement
The control to transition between states.
- stateGroupsRoot
- FrameworkElement
The root element that contains the VisualStateManager.
- stateName
- String
The name of the state to transition to.
- group
- VisualStateGroup
The VisualStateGroup that the state belongs to.
- state
- VisualState
The representation of the state to transition to.
- useTransitions
- Boolean
true
to use a VisualTransition object to transition between states; otherwise, false
.
Returns
true
if the control successfully transitioned to the new state; otherwise, false
.
Remarks
The GoToStateCore method performs the logic necessary to appropriately start and stop the storyboards that are associated with a transition. When a control calls GoToState to change its state, the VisualStateManager does the following:
First, if the VisualState that the control is transitioning to has a Storyboard, the storyboard begins. Then, if the VisualState that the control is coming from has a Storyboard, the storyboard ends.
If the control is already in the
stateName
state, GoToState takes no action and returnstrue
.If
stateName
does not exist in the ControlTemplate ofcontrol
, GoToState takes no action and returnsfalse
.
You can implement your own VisualStateManager to provide different logic for transitioning between states. For example, you can change the logic described previously, or you can provide logic to transition between custom animation types. To implement a VisualStateManager, create a class that inherits from VisualStateManager and override the GoToStateCore method. To use the custom class, set the CustomVisualStateManager property to an object of your custom type.