現象
ボタン押下時の薄青の着色を解除したい。Templateを書き換える事で対応したが何故か有効にならない。

コード
<Button Content="ボタン1" Style="{StaticResource BS1}">
  <Button.Resources>
    <Style TargetType="{x:Type Button}">
      <-- templateを書き換え、mouseoverでの着色を解除する -->
      <Setter Property="Template">
        <Setter.Value>
          <ControlTemplate TargetType="{x:Type Button}">
            <-- templateを置き換えるので border を再書換え? -->
            <Border x:Name="border" BorderBrush="{TemplateBinding BorderBrush}"
                BorderThickness="{TemplateBinding BorderThickness}"
                Background="{TemplateBinding Background}"
                SnapsToDevicePixels="true">
              <ContentPresenter x:Name="contentPresenter" 
                Focusable="False"
                HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                Margin="{TemplateBinding Padding}"
                RecognizesAccessKey="True"
                SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
                VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
                </Border>
                <ControlTemplate.Triggers>
              <-- IsPressed中は background ではなく borderで表現する -->
              <Trigger Property="IsPressed" Value="true">
                <Setter Property="BorderBrush" Value="#FFBEE6FD"/>
                <Setter Property="BorderThickness" Value="4"/>
              </Trigger>
            </ControlTemplate.Triggers>
          </ControlTemplate>
        </Setter.Value>
      </Setter>
    </Style>
  </Button.Resources>
</Button>

IsPressed, IsMouseOver, IsFocused, IsCancel, IsEnabled, IsHitTestVisible, IsStylusOverなどが指定可能。

原因

Button Styleにスタイルを指定にした場合に、Resources.Templateがどうも有効とならない。これは適用順序がある為であろうか?または、その設定により何かが見つからなくなっている、相対パスが異なり not foundが起きているのだろうか?

回避策
Button Styleではなく、Resources.Style の BasedOnで指定する。
<Button>
  <Button.Resources>
    <Style TargetType="{x:Type Button}" BasedOn="{StaticResource BS1}">