ReadLocalValue Method
Collapse the table of content
Expand the table of content

DependencyObject.ReadLocalValue Method

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

Returns the local value of a dependency property, if a local value is set.

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

public Object ReadLocalValue(
	DependencyProperty dp


Type: System.Windows.DependencyProperty
The DependencyProperty identifier of the property to retrieve the local value for.

Return Value

Type: System.Object
Returns the local value, or returns the sentinel value UnsetValue if no local value is set.

You should use the CLR wrappers, or GetValue, for most typical "get" operations for a dependency property. ReadLocalValue does not return the effective value for a variety of circumstances where the value was not locally set.

Values that are set by animations, styles, templates, default value, or property value inheritance are not considered to be local values. However, bindings and similar expressions are considered to be local values, after they have been evaluated.

When no local value is set, this method returns UnsetValue. The UnsetValue is a sentinel for this case and should not be used as a return value of custom dependency property values.

The following example checks for an existing local value with ReadLocalValue. If there is a local value, as indicated by not returning UnsetValue, then the existing local value is removed by calling ClearValue.

public static bool ClearSetProperty(DependencyObject targetObject, DependencyProperty targetDP)
    if (targetObject == null || targetDP == null)
        throw new ArgumentNullException();
    object localValue = targetObject.ReadLocalValue(targetDP);
    if (localValue == DependencyProperty.UnsetValue)
        return false;
        return true;

Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

© 2018 Microsoft