見事に嵌ってしまったのでメモしておく。
優先順位が "Setter や Trigger で変更した値 < スタイルを適用する要素で指定された値" なので
<Button Background="Blue" Content="Button"> <Button.Style> <Style.Triggers> <DataTrigger Binding="{Binding ...}" Value="..."> <Setter Property="Background" Value="Red"/> </DataTrigger> </Style.Triggers> </Button.Style> </Button>
というように書いてしまうと、トリガー内の Setter で指定した値が反映されなくなります。なので、変更する値は Setter で指定する方がよさそうです。