diff --git a/src/Avalonia.Base/Styling/Styler.cs b/src/Avalonia.Base/Styling/Styler.cs index 6ac2e8d372..ad5c1cd102 100644 --- a/src/Avalonia.Base/Styling/Styler.cs +++ b/src/Avalonia.Base/Styling/Styler.cs @@ -8,14 +8,14 @@ namespace Avalonia.Styling { _ = target ?? throw new ArgumentNullException(nameof(target)); - // If the control has a themed templated parent then first apply the styles from - // the templated parent theme. + // Apply the control theme. + target.GetEffectiveTheme()?.TryAttach(target, target); + + // If the control has a themed templated parent then apply the styles from the + // templated parent theme. if (target.TemplatedParent is IStyleable styleableParent) styleableParent.GetEffectiveTheme()?.TryAttach(target, styleableParent); - // Next apply the control theme. - target.GetEffectiveTheme()?.TryAttach(target, target); - // Apply styles from the rest of the tree. if (target is IStyleHost styleHost) ApplyStyles(target, styleHost);