你想创建水印文本框吗?如果是这样,我通过向自定义控件添加TextBlock来创建我的控件,然后在触发器定义中引用它。当文本框没有焦点,并且控件中没有文本时,水印(TextBlock)将可见。一旦TexBox获得焦点,水印将被隐藏。然后水印的文本将绑定到BackgroundText属性。
<ControlTemplate.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsFocused" Value="false"/>
<Condition Property="Text" Value="{x:Null}"/>
</MultiTrigger.Conditions>
<Setter TargetName="Watermark" Property="Visibility" Value="Visible"/>
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsFocused" Value="false"/>
<Condition Property="Text" Value=""/>
</MultiTrigger.Conditions>
<Setter TargetName="Watermark" Property="Visibility" Value="Visible"/>
</MultiTrigger>
</ControlTemplate.Triggers>