How to use a ContentPresenter inside a UserControl
<p>I'd like to create a UserControl (in this case a square-Button with defined Backgroundcolors) which can host it's own content.</p>

<p>UserControl:</p>

<pre><code>&lt;UserControl x:Class="SGDB.UI.Controls.ModernButton"
         xmlns:local="clr-namespace:SGDB.UI.Controls"
         xmlns:converter="clr-namespace:SGDB.UI.Converter"
         x:Name="_modernButton"&gt;
&lt;Button&gt;
    &lt;Button.Resources&gt;
        &lt;converter:EnumToColorConverter x:Key="ColorConverter"/&gt;
    &lt;/Button.Resources&gt;
    &lt;Button.Template&gt;
        &lt;ControlTemplate&gt;
            &lt;Border Width="{Binding Size, ElementName=_modernButton}" Height="{Binding Size, ElementName=_modernButton}" BorderBrush="Black" BorderThickness="0.8,0.8,3,3"&gt;
                &lt;Grid Background="{Binding BackgroundColor, ElementName=_modernButton, Converter={StaticResource ColorConverter}}"&gt;
                    &lt;ContentPresenter/&gt;
                &lt;/Grid&gt;
            &lt;/Border&gt;
        &lt;/ControlTemplate&gt;
    &lt;/Button.Template&gt;
&lt;/Button&gt;
</code></pre>

<p></p>

<p>Now, as you may expect it, if I use this Control inside my MainView everthing works just fine until I define some Content.</p>

<p>Using:</p>

<pre><code>&lt;control:ModernButton Size="200" BackgroundColor="Light"&gt;
    TEST
&lt;/control:ModernButton&gt;
</code></pre>

<p>In this case "TEST" will override the whole Content of the UserControl (the whole Button Template). I guess this happens because The Button inside the UserControl is defined as "Content" itself and it will get overridden when defining new Content.</p>

<p>So the final question is: Is it possible to achieve what I'm looking for? if yes: How? How could I "redirect" the Content I'm defining in my MainView into the self-defined ContentPresenter inside my Button Template instead of the UserControls's ContentPresenter?</p>

<p>If possible I don't want to create a new dp-propery which hosts my Content, e.g.:</p>

<pre><code>&lt;controls:MordernButton Size="200" BackgroundColor="Light"&gt;
    &lt;controls:ModernButton.Content&gt;
        I don't want this, if possible
    &lt;/controls:ModernButton.Content&gt;
&lt;/controls:ModernButton&gt;
</code></pre>