diff --git a/src/Avalonia.Base/AvaloniaObject.cs b/src/Avalonia.Base/AvaloniaObject.cs index 4ab813333d..68b9871fd1 100644 --- a/src/Avalonia.Base/AvaloniaObject.cs +++ b/src/Avalonia.Base/AvaloniaObject.cs @@ -71,7 +71,8 @@ namespace Avalonia public AvaloniaObject() { VerifyAccess(); - foreach (var property in AvaloniaPropertyRegistry.Instance.GetRegistered(this)) + + void Notify(AvaloniaProperty property) { object value = property.IsDirect ? ((IDirectPropertyAccessor)property).GetValue(this) : @@ -86,6 +87,16 @@ namespace Avalonia property.NotifyInitialized(e); } + + foreach (var property in AvaloniaPropertyRegistry.Instance.GetRegistered(this)) + { + Notify(property); + } + + foreach (var property in AvaloniaPropertyRegistry.Instance.GetRegisteredAttached(this.GetType())) + { + Notify(property); + } } ///