DependencyObject.SetValue(DependencyProperty, Object) DependencyObject.SetValue(DependencyProperty, Object) DependencyObject.SetValue(DependencyProperty, Object) DependencyObject.SetValue(DependencyProperty, Object) Method

Definition

Sets the local value of a dependency property on a DependencyObject.

public : void SetValue(DependencyProperty dp, Platform::Object value)
void SetValue(DependencyProperty dp, winrt::Windows::Foundation::IInspectable value) const;
public void SetValue(DependencyProperty dp, Object value)
Public Sub SetValue(dp As DependencyProperty, value As Object)

Parameters

dp
DependencyProperty DependencyProperty

The identifier of the dependency property to set.

value
Object Object

The new local value.

Remarks

If the provided value type does not match the type that is declared for the dependency property as it was originally registered, an exception is thrown.

Not all Windows Runtime properties as used by XAML are dependency properties. A DependencyProperty identifier needs to exist and it must be available as a public property of an owning object, typically the object that registered the property.

For app user-code, calling SetValue is not typically necessary. Usually, a Windows Runtime dependency property or a custom dependency property has a conventional property that wraps it, and you can just set the property value through a conventional dotted usage. Cases where you might still use SetValue are:

  • You are defining a custom dependency property. You will call SetValue as part of defining your own property set accessor for a conventional property usage. For more info, see Custom dependency properties.
  • You are defining a callback or are in some other scope where you are already being passed a DependencyProperty identifier, and it is possible that more than one dependency property exists that you might want to interact with in that scope. In these cases it is probably simpler to call SetValue, passing the identifier.

See Also