Windows apps
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

VisualStateManager.GoToState Method (FrameworkElement, String, Boolean)

.NET Framework (current version)
 

Transitions the control between two states. Use this method to transition states on control that has a ControlTemplate.

Namespace:   System.Windows
Assembly:  PresentationFramework (in PresentationFramework.dll)

public static bool GoToState(
	FrameworkElement control,
	string stateName,
	bool useTransitions
)

Parameters

control
Type: System.Windows.FrameworkElement

The control to transition between states.

stateName
Type: System.String

The state to transition to.

useTransitions
Type: System.Boolean

true to use a VisualTransition object to transition between states; otherwise, false.

Return Value

Type: System.Boolean

true if the control successfully transitioned to the new state; otherwise, false.

Exception Condition
ArgumentNullException

control is null.

-or-

stateName is null.

Call the GoToState method if you are changing states in a control that uses the VisualStateManager in its ControlTemplate. Call the GoToElementState method to change states on an element outside of a ControlTemplate (for example, if you use a VisualStateManager in a UserControl or in a single element).

The following example demonstrates a control that uses the GoToState method to transition between states. For the entire example, see Creating a Control That Has a Customizable Appearance.

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);
    }

}

.NET Framework
Available since 4.0
Return to top
Show:
© 2017 Microsoft