DependencyPropertyChangedEventHandler Delegate

Definition

Represents the method that will handle events that occur when a DependencyProperty is changed on a particular DependencyObject implementation.

public delegate void DependencyPropertyChangedEventHandler(Platform::Object ^ sender, DependencyPropertyChangedEventArgs ^ e);
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(153239130, 30142, 17561, 129, 128, 29, 220, 0, 84, 33, 192)]
class DependencyPropertyChangedEventHandler : MulticastDelegate
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.Guid(153239130, 30142, 17561, 129, 128, 29, 220, 0, 84, 33, 192)]
public delegate void DependencyPropertyChangedEventHandler(object sender, DependencyPropertyChangedEventArgs e);
Public Delegate Sub DependencyPropertyChangedEventHandler(sender As Object, e As DependencyPropertyChangedEventArgs)

Parameters

sender
Object

Platform::Object

IInspectable

The source of the event (typically the object where the property changed).

Attributes

Windows requirements

Device family
Windows 10 (introduced in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced in v1.0)

Remarks

DependencyPropertyChangedEventHandler is the delegate to use when writing handlers for the Control.IsEnabledChanged event. That event is the only defined Windows Runtime event that uses this delegate.

A custom control implementer might consider using DependencyPropertyChangedEventHandler as the delegate type if a custom event is fired as a result of a dependency property value change. You can only fire such an event from within the context of a PropertyChangedCallback. This is because the value that changed (the property, the old and new value) should be in the DependencyPropertyChangedEventArgs that are reported for the event at the property-system level. But there aren't any constructors for DependencyPropertyChangedEventArgs and none of its properties are settable, so the only way to get a DependencyPropertyChangedEventArgs value is to get it from the original PropertyChangedCallback parameters and pass it through when you fire your custom event.

DependencyPropertyChangedEventHandler is not the delegate that you use for custom dependency property metadata and a custom property-changed callback behavior. For that, you want PropertyChangedCallback. For more info, see Custom dependency properties.

Applies to

See also