DependencyProperty not triggered

The setter of your dependency property will not be called when the property is set in XAML. WPF will instead call the SetValue method directly.

See MSDN XAML Loading and Dependency Properties for an explanation why the setter is not called.

You would have to register a PropertyChangedCallback with property metadata.


You should use a property changed handler in your dependency property directly. This way you ensure that it gets called when set in XAML:

public static readonly DependencyProperty IsSelectedProperty =
    DependencyProperty.Register("IsSelected", typeof(bool), typeof(ucMyControl), new PropertyMetadata(false, OnIsSelectedChanged));

private static void OnIsSelectedChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
    // Implement change logic
}