? is a decorator. T? is the same as Nullable<T> , i.e. value type with a null value.
The documentation for the By property explains why it is used here:
The property controls the progress of A DoubleAnimation ; but instead of setting the By property, you can also set the From and To properties (or either) to control the progress of the animation. Any combination of properties (except To and By ) is allowed, so there should be a way to report that the property is not set - therefore, its value is zero.
Use the By property if you want to animate the value "by" a certain amount, instead of specifying a start or end value. You can also use the By property with the From property.
Konrad Rudolph
source share