Change button content foreground or stroke color using a custom button style
<p>I try to change the Stroke of an Ellipse that is the Content of a Button on mouse hover using a custom button style like this:</p>

<pre><code>&lt;Style x:Key="MyButtonStyle" TargetType="ButtonBase"&gt;
    &lt;Setter Property="Foreground" Value="Black"/&gt;
    &lt;Setter Property="Template"&gt;
        &lt;Setter.Value&gt;
            &lt;ControlTemplate TargetType="ButtonBase"&gt;
                &lt;Grid x:Name="RootGrid"&gt;
                    &lt;VisualStateManager.VisualStateGroups&gt;
                        &lt;VisualStateGroup x:Name="CommonStates"&gt;
                            &lt;VisualState x:Name="Normal"/&gt;
                            &lt;VisualState x:Name="PointerOver"&gt;
                                &lt;Storyboard&gt;
                                    &lt;ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentPresenter"&gt;
                                        &lt;DiscreteObjectKeyFrame KeyTime="0" Value="Blue" /&gt;
                                    &lt;/ObjectAnimationUsingKeyFrames&gt;
                                &lt;/Storyboard&gt;
                            &lt;/VisualState&gt;
                        &lt;/VisualStateGroup&gt;
                    &lt;/VisualStateManager.VisualStateGroups&gt;
                    &lt;ContentPresenter
                            x:Name="ContentPresenter"
                            Foreground="{TemplateBinding Foreground}" 
                            ContentTemplate="{TemplateBinding ContentTemplate}"
                            ContentTransitions="{TemplateBinding ContentTransitions}"
                            Content="{TemplateBinding Content}" /&gt;
                &lt;/Grid&gt;
            &lt;/ControlTemplate&gt;
        &lt;/Setter.Value&gt;
    &lt;/Setter&gt;
&lt;/Style&gt;
</code></pre>

<p>Why does only the TextBlock with the Text "Working" change its Foreground property?</p>

<pre><code>&lt;Button x:Name="MyButton" Style="{StaticResource MyButtonStyle}"&gt;
    &lt;StackPanel&gt;
                &lt;Ellipse Width="20" Height="20" Stroke="{x:Bind MyButton.Foreground, Mode=OneWay}"&gt;&lt;/Ellipse&gt;
                &lt;TextBlock Foreground="{x:Bind MyButton.Foreground, Mode=OneWay}" Text="Not Working" /&gt;
                &lt;TextBlock Text="Working" /&gt;
    &lt;/StackPanel&gt;
&lt;/Button&gt;
</code></pre>