diff --git a/src/Avalonia.Controls/ContentControl.cs b/src/Avalonia.Controls/ContentControl.cs
index 0eba3c13ae..6da6da54a5 100644
--- a/src/Avalonia.Controls/ContentControl.cs
+++ b/src/Avalonia.Controls/ContentControl.cs
@@ -51,6 +51,7 @@ namespace Avalonia.Controls
/// Gets or sets the content to display.
///
[Content]
+ [DependsOn(nameof(ContentTemplate))]
public object Content
{
get { return GetValue(ContentProperty); }
diff --git a/src/Avalonia.Controls/Presenters/ContentPresenter.cs b/src/Avalonia.Controls/Presenters/ContentPresenter.cs
index 97760b5632..a97fdf8784 100644
--- a/src/Avalonia.Controls/Presenters/ContentPresenter.cs
+++ b/src/Avalonia.Controls/Presenters/ContentPresenter.cs
@@ -8,6 +8,7 @@ using Avalonia.Controls.Templates;
using Avalonia.Layout;
using Avalonia.LogicalTree;
using Avalonia.Media;
+using Avalonia.Metadata;
using Avalonia.VisualTree;
namespace Avalonia.Controls.Presenters
@@ -139,6 +140,7 @@ namespace Avalonia.Controls.Presenters
///
/// Gets or sets the content to be displayed by the presenter.
///
+ [DependsOn(nameof(ContentTemplate))]
public object Content
{
get { return GetValue(ContentProperty); }
diff --git a/src/Avalonia.Themes.Default/Button.xaml b/src/Avalonia.Themes.Default/Button.xaml
index 908f293fa7..94fcce5e0c 100644
--- a/src/Avalonia.Themes.Default/Button.xaml
+++ b/src/Avalonia.Themes.Default/Button.xaml
@@ -13,8 +13,8 @@
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
- Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"
+ Content="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"
TextBlock.Foreground="{TemplateBinding Foreground}"
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
diff --git a/src/Avalonia.Themes.Default/CalendarButton.xaml b/src/Avalonia.Themes.Default/CalendarButton.xaml
index 5f3cba5c7a..84969c135f 100644
--- a/src/Avalonia.Themes.Default/CalendarButton.xaml
+++ b/src/Avalonia.Themes.Default/CalendarButton.xaml
@@ -29,8 +29,8 @@
diff --git a/src/Avalonia.Themes.Default/ContentControl.xaml b/src/Avalonia.Themes.Default/ContentControl.xaml
index 27f6648548..7584ae0dfe 100644
--- a/src/Avalonia.Themes.Default/ContentControl.xaml
+++ b/src/Avalonia.Themes.Default/ContentControl.xaml
@@ -5,8 +5,8 @@
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
- Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"
+ Content="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"/>
diff --git a/src/Avalonia.Themes.Default/DropDownItem.xaml b/src/Avalonia.Themes.Default/DropDownItem.xaml
index 48d791f629..257030d8af 100644
--- a/src/Avalonia.Themes.Default/DropDownItem.xaml
+++ b/src/Avalonia.Themes.Default/DropDownItem.xaml
@@ -10,8 +10,8 @@
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
- Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"
+ Content="{TemplateBinding Content}"
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
Padding="{TemplateBinding Padding}"/>
diff --git a/src/Avalonia.Themes.Default/EmbeddableControlRoot.xaml b/src/Avalonia.Themes.Default/EmbeddableControlRoot.xaml
index f39720bb65..de364c0108 100644
--- a/src/Avalonia.Themes.Default/EmbeddableControlRoot.xaml
+++ b/src/Avalonia.Themes.Default/EmbeddableControlRoot.xaml
@@ -7,8 +7,8 @@
diff --git a/src/Avalonia.Themes.Default/Expander.xaml b/src/Avalonia.Themes.Default/Expander.xaml
index 51efec6b95..5e05dcf608 100644
--- a/src/Avalonia.Themes.Default/Expander.xaml
+++ b/src/Avalonia.Themes.Default/Expander.xaml
@@ -16,8 +16,8 @@
@@ -34,8 +34,8 @@
@@ -52,8 +52,8 @@
@@ -70,8 +70,8 @@
diff --git a/src/Avalonia.Themes.Default/LayoutTransformControl.xaml b/src/Avalonia.Themes.Default/LayoutTransformControl.xaml
index c9df62625f..b26f053622 100644
--- a/src/Avalonia.Themes.Default/LayoutTransformControl.xaml
+++ b/src/Avalonia.Themes.Default/LayoutTransformControl.xaml
@@ -5,8 +5,8 @@
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
- Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"
+ Content="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"/>
diff --git a/src/Avalonia.Themes.Default/ListBoxItem.xaml b/src/Avalonia.Themes.Default/ListBoxItem.xaml
index 64fc62ba73..a0405f2875 100644
--- a/src/Avalonia.Themes.Default/ListBoxItem.xaml
+++ b/src/Avalonia.Themes.Default/ListBoxItem.xaml
@@ -7,8 +7,8 @@
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
- Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"
+ Content="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"/>
diff --git a/src/Avalonia.Themes.Default/PopupRoot.xaml b/src/Avalonia.Themes.Default/PopupRoot.xaml
index 47e519bf90..cc23367ac0 100644
--- a/src/Avalonia.Themes.Default/PopupRoot.xaml
+++ b/src/Avalonia.Themes.Default/PopupRoot.xaml
@@ -4,8 +4,8 @@
diff --git a/src/Avalonia.Themes.Default/RadioButton.xaml b/src/Avalonia.Themes.Default/RadioButton.xaml
index 0a0eb48564..fb71432595 100644
--- a/src/Avalonia.Themes.Default/RadioButton.xaml
+++ b/src/Avalonia.Themes.Default/RadioButton.xaml
@@ -29,8 +29,8 @@
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
diff --git a/src/Avalonia.Themes.Default/RepeatButton.xaml b/src/Avalonia.Themes.Default/RepeatButton.xaml
index 1caaa266de..872f390ac5 100644
--- a/src/Avalonia.Themes.Default/RepeatButton.xaml
+++ b/src/Avalonia.Themes.Default/RepeatButton.xaml
@@ -20,8 +20,8 @@
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
- Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"
+ Content="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"
TextBlock.Foreground="{TemplateBinding Foreground}"
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
diff --git a/src/Avalonia.Themes.Default/TabStripItem.xaml b/src/Avalonia.Themes.Default/TabStripItem.xaml
index 7f7fef0a1a..408cfaa3d7 100644
--- a/src/Avalonia.Themes.Default/TabStripItem.xaml
+++ b/src/Avalonia.Themes.Default/TabStripItem.xaml
@@ -9,8 +9,8 @@
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
- Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"
+ Content="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"/>
diff --git a/src/Avalonia.Themes.Default/ToggleButton.xaml b/src/Avalonia.Themes.Default/ToggleButton.xaml
index 12d7daacda..dadc45d854 100644
--- a/src/Avalonia.Themes.Default/ToggleButton.xaml
+++ b/src/Avalonia.Themes.Default/ToggleButton.xaml
@@ -13,8 +13,8 @@
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
- Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"
+ Content="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"
TextBlock.Foreground="{TemplateBinding Foreground}"
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
diff --git a/src/Avalonia.Themes.Default/ToolTip.xaml b/src/Avalonia.Themes.Default/ToolTip.xaml
index f3e819c101..1fc0202dd3 100644
--- a/src/Avalonia.Themes.Default/ToolTip.xaml
+++ b/src/Avalonia.Themes.Default/ToolTip.xaml
@@ -9,8 +9,8 @@
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
- Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"
+ Content="{TemplateBinding Content}"
Padding="{TemplateBinding Padding}"/>
diff --git a/src/Avalonia.Themes.Default/Window.xaml b/src/Avalonia.Themes.Default/Window.xaml
index 06922addad..d19bf41c4d 100644
--- a/src/Avalonia.Themes.Default/Window.xaml
+++ b/src/Avalonia.Themes.Default/Window.xaml
@@ -7,8 +7,8 @@