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.

VisualTransition Class

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Represents the visual behavior that occurs when the control transitions from one state to another.

Namespace:  System.Windows
Assembly:  System.Windows (in System.Windows.dll)
XMLNS for XAML: Not mapped to an xmlns.

[ContentPropertyAttribute("Storyboard", true)]
public class VisualTransition : DependencyObject
<VisualTransition .../>

XAML Values


Exactly one Storyboard object element.

The VisualTransition type exposes the following members.

Public methodVisualTransitionInitializes a new instance of the VisualTransition class.

Public propertyDispatcherGets the Dispatcher this object is associated with. (Inherited from DependencyObject.)
Public propertyFromGets or sets the name of the VisualState to transition from.
Public propertyGeneratedDurationGets or sets the amount of time it takes to move from one state to another.
Public propertyGeneratedEasingFunctionGets or sets the easing function applied to the generated animations.
Public propertyStoryboardGets or sets the Storyboard that occurs when the transition occurs.
Public propertyToGets or sets the name of the VisualState to transition to.

Public methodCheckAccessDetermines whether the calling thread has access to this object. (Inherited from DependencyObject.)
Public methodClearValueClears the local value of a dependency property. (Inherited from DependencyObject.)
Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetAnimationBaseValueReturns any base value established for a Windows Phone dependency property, which would apply in cases where an animation is not active. (Inherited from DependencyObject.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodGetValueReturns the current effective value of a dependency property from a DependencyObject. (Inherited from DependencyObject.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodReadLocalValueReturns the local value of a dependency property, if a local value is set. (Inherited from DependencyObject.)
Public methodSetValueSets the local value of a dependency property on a DependencyObject. (Inherited from DependencyObject.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)

You can specify the visual behavior of a control when it transitions between states by adding VisualTransition objects to the ControlTemplate. When you create a VisualTransition, you specify one or more of the following:

  • The time it takes for a transition between states to occur by setting the GeneratedDuration property.

  • Additional changes in the control's appearance that occur at the time of the transition by setting the Storyboard property.

  • When the VisualTransition is applied by setting the To and From properties.

The following example creates a VisualTransition that specifies that when the user moves the pointer away from the control, the control's border changes to blue, then to yellow, then to black in 1.5 seconds.

<!--Take one and a half seconds to transition from the
    MouseOver state to the Normal state. 
    Have the SolidColorBrush, BorderBrush, fade to blue, 
    then to yellow, and then to black in that time.-->
<VisualTransition From="MouseOver" To="Normal" 
      FillBehavior="HoldEnd" >


        <LinearColorKeyFrame Value="{StaticResource PhoneSubtleColor}" 
                             KeyTime="0:0:0.5" />
        <LinearColorKeyFrame Value="{StaticResource PhoneContrastBackgroundColor}" 
                             KeyTime="0:0:1" />
        <LinearColorKeyFrame Value="{StaticResource PhoneForegroundColor}" 
                             KeyTime="0:0:1.5" />


Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.