ValueSource Struct


Reports the information returned from GetValueSource(DependencyObject, DependencyProperty).

public value class ValueSource
public struct ValueSource
type ValueSource = struct
Public Structure ValueSource


Most of the information that ValueSource transmits is contained in the BaseValueSource property. This property contains an enumeration value that specifies exactly one aspect of the overall WPF property system that is responsible for the effective value of a dependency property.

Besides the base value, the other information that might be interesting about a dependency property value is whether the value is being animated, and whether the value involves an expression (such as a binding, or a dynamic resource reference). This information is reported by IsAnimated and IsExpression respectively. Also, if coercion is acting on a property value, the property retains a desired value, and the property value will attempt to reach that desired value if the constraints of the specific coercion are changed or lifted. A coerced property that is not at its desired value will report that IsCoerced is true.



Gets a value of the BaseValueSource enumeration, which reports the source that provided the dependency property system with a value.


Gets a value that declares whether the property is being animated.


Gets a value that declares whether this value resulted from a CoerceValueCallback implementation applied to a dependency property.


Gets whether the value was set by the SetCurrentValue(DependencyProperty, Object) method.


Gets a value that declares whether this value resulted from an evaluated expression. This might be a BindingExpression supporting a binding, or an internal expression such as those that support the DynamicResource Markup Extension.



Returns a value indicating whether this ValueSource is equal to a specified object.


Returns the hash code for this ValueSource.


Equality(ValueSource, ValueSource)

Determines whether two ValueSource instances have the same value.

Inequality(ValueSource, ValueSource)

Determines whether two ValueSource instances do not have the same value.

Applies to

See also