文本框(TextBox)水印效果
显示效果:
方法一:验证触发器填充VisualBrush
创建一个可视画刷VisualBrush,使用触发器验证一下Text是否为空,使用VisualBrush填充TextBox的背景色
<TextBox Height="25" Width="180" HorizontalAlignment="Center" Margin="0 50 0 0">
<TextBox.Resources>
<VisualBrush x:Key="HelpBrush" TileMode="None" Opacity="0.3" Stretch="None" AlignmentX="Left">
<VisualBrush.Visual>
<TextBlock Text="请输入账号"/>
</VisualBrush.Visual>
</VisualBrush>
</TextBox.Resources>
<TextBox.Style>
<Style TargetType="TextBox">
<Style.Triggers>
<Trigger Property="Text" Value="">
<Setter Property="Background" Value="{StaticResource HelpBrush}"/>
</Trigger>
</Style.Triggers>
</Style>
</TextBox.Style>
</TextBox>
方法二:判断鼠标焦点填充SolidColorBrush
判断TextBox获取到焦点时文字消失,失去焦点时文字显示,在后台使用SolidColorBrush画刷填充
XAML代码(添加TextBox获取到焦点和失去焦点的事件):
<TextBox Name="tbxUser" GotFocus="TbxUs