1。代码如下
<Style x:Key="txtTest" TargetType="TextBox">
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="SnapsToDevicePixels" Value="True" />//消除锯齿
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TextBox">
<Grid x:Name="Grid">
<Border x:Name="Border" SnapsToDevicePixels="True"
CornerRadius="1"
BorderBrush="LightGray" BorderThickness="2" Background="White" />
<ScrollViewer x:Name="PART_ContentHost" BorderThickness="0"
IsTabStop="False" Margin="2" VerticalAlignment="Stretch" />//"PART_ContentHost"专属名词,改动报错
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="Border" Property="BorderBrush" Value="Blue"/>
<Setter TargetName="Border" Property="Opacity" Value="0.2"/>
</Trigger>//鼠标悬停
<Trigger Property="IsFocused" Value="True">
<Setter TargetName="Border" Property="BorderBrush" Value="Blue"/>
<Setter TargetName="Border" Property="Opacity" Value="0.5"/>
</Trigger>//焦点
<Trigger Property="IsEnabled" Value="False">
<Setter TargetName="Grid" Property="Opacity" Value="0.2" />
</Trigger>//无效
<Trigger Property="IsReadOnly" Value="True">
<Setter TargetName="Grid" Property="IsEnabled" Value="False" />
<Setter TargetName="Border" Property="Opacity" Value="0.2" />
<Setter TargetName="PART_ContentHost" Property="Opacity" Value="0.5" />
</Trigger>//只读
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
2。初始状态
3。IsMouseOver
4。IsFocused