This documentation is archived and is not being maintained.

VisualStateManager::RaiseCurrentStateChanged Method

Raises the CurrentStateChanging event on the specified VisualStateGroup object.

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

void RaiseCurrentStateChanged(
	VisualStateGroup^ stateGroup, 
	VisualState^ oldState, 
	VisualState^ newState, 
	FrameworkElement^ control, 
	FrameworkElement^ stateGroupsRoot


Type: System.Windows::VisualStateGroup
The object that the CurrentStateChanging event occurred on.
Type: System.Windows::VisualState
The state that the control is transitioning from.
Type: System.Windows::VisualState
The state that the control is transitioning to.
Type: System.Windows::FrameworkElement
The control that is transitioning states.
Type: System.Windows::FrameworkElement
The root element that contains the VisualStateManager.


stateGroupsRoot is nullptr.


newState is nullptr.

When the VisualStateGroup is set on the ControlTemplate of a control, the control parameter is set to the control that owns ControlTemplate. When the VisualStateGroup is set on a FrameworkElement, control is nullptr and you should use the stateGroupsRoot parameter.

Notes to Inheritors

When overriding RaiseCurrentStateChanged in a derived class, be sure to call the base class’s RaiseCurrentStateChanged method so that registered delegates receive the event.

.NET Framework

Supported in: 4

.NET Framework Client Profile

Supported in: 4

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.