找到一位仁兄写的资料,困扰我好几天的问题最终得到解决。
根源:Cell的样式把Row的样式覆盖了,所以触发器应该设置在Cell样式中
<DataGrid.CellStyle>
<Style TargetType="DataGridCell">
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="MinWidth" Value="85"/>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="LightBlue"/>
<Setter Property="Foreground" Value="White"/>
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.CellStyle>
参考: http://doncle.blog.163.com/blog/static/162813941201431011025934/