最近我阅读了有关样式和控件模板的信息。正如它所说,控制模板负责整个控制设计。但是,例如,我想仅更改默认控件模板的特定部分,例如当鼠标悬停或控件具有焦点时,当我编写以下代码时:
<Style x:Key="StyleTextBox" TargetType="TextBox">
<Setter Property="Margin" Value="5, 0"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="HorizontalContentAlignment" Value="Left"/>
<Setter Property="BorderBrush" Value="Black"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="SelectionBrush" Value="#CCFBE6D9"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="BorderBrush" Value="Black" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
..整个模板被覆盖了......而且它有点不酷......
那么如何只改变 isMouseOver 视觉样式,而不覆盖整个默认样式呢?