<AnimationTimeline .../> is a base class for a number of other abstract classes that can animate specific types of data. All the derived classes are the same, except for the type of data they are intended to animate. A few derived classes specifically implement a separate Animation, such as ColorAnimation and DoubleAnimation.
All of the TypeAnimationBase elements have at least one subclass that can animate the data type supported by using a collection of KeyFrame elements. Each subclass is appropriately named TypeAnimationUsingKeyFrames. These elements are identical to each other in functionality; they simply require the use of a data type-specific KeyFrame, which is named using the format TypeKeyFrame. Each TypeKeyFrame element is detailed in this chapter. For example, the BooleanAnimationBase element has one subclass, BooleanAnimationUsingKeyFrames, which requires a collection of BooleanKeyFrame elements as its children.
Example 11-1 offers a DoubleAnimationUsingKeyFrames as a template for how to use the classes derived from AnimationTimeline.
Similarly, a majority of the TypeAnimationBase elements have TypeAnimation subclasses. These predefined animations offer a way to animate specific types of data in an easy-to-define element. Each of the elements utilizes the same attributes: From, To, By, and Duration. The only difference between them is that the From, To, and By attributes are specific to the type of the animation. From, To, and By are of type Color for a ColorAnimation; for a DoubleAnimation, they are of type Double (Example 11-2).
All of the TypeAnimation elements are declared in a similar manner, substituting the appropriate Type with From, To, or By. These elements are not further documented because they are declared exactly the same way and with the same attributes, differentiated only by their data type. The elements are listed in this chapter but refer back to AnimationTimeline as their main reference.
The AnimationTimeline-derived elements are: