Wpf 如果没有发生验证错误,如何在工具提示中显示文本框的文本。否则显示验证错误

Wpf 如果没有发生验证错误,如何在工具提示中显示文本框的文本。否则显示验证错误,wpf,validation,c#-4.0,triggers,Wpf,Validation,C# 4.0,Triggers,我有一个验证日期的文本框 我想在文本框上的工具提示中显示内容(如果有效)。否则,我想在工具提示中显示验证错误 我已经在文本上设置了标准工具提示,并添加了几个触发器: <MultiTrigger> <MultiTrigger.Conditions> <Condition Property="Validation.HasError" Value="False" /> <Condition Pro

我有一个验证日期的文本框

我想在文本框上的工具提示中显示内容(如果有效)。否则,我想在工具提示中显示验证错误

我已经在文本上设置了标准工具提示,并添加了几个触发器:

<MultiTrigger>
   <MultiTrigger.Conditions>
      <Condition Property="Validation.HasError"
                 Value="False" />
      <Condition Property="Text"
                 Value="" />
    </MultiTrigger.Conditions>
    <MultiTrigger.Setters>
       <Setter Property="ToolTipService.ToolTip"
               TargetName="DataTextBox"
               Value="{x:Null}"/>
    </MultiTrigger.Setters>
</MultiTrigger>

<MultiTrigger>
   <MultiTrigger.Conditions>
      <Condition Property="Validation.HasError"
                 Value="True" />
    </MultiTrigger.Conditions>
    <MultiTrigger.Setters>
       <Setter Property="ToolTipService.ToolTip"
               TargetName="DataTextBox"
               Value="{Binding (Validation.Errors)[0].ErrorContent}"/>
    </MultiTrigger.Setters>
</MultiTrigger>

我需要一个否定条件来检查文本框中是否添加了文本


谢谢您的帮助。

默认情况下,只需将工具提示绑定到
文本框的文本
,并在项目出现错误时使用
触发器设置验证错误

<Style x:Key="MyTextBoxStyle" TargetType="{x:Type TextBox}">
    <Setter Property="ToolTip" 
            Value="{Binding RelativeSource={RelativeSource Self}, Path=Text}" />

    <Style.Triggers>
       <Trigger Property="Validation.HasError" Value="True">
            <Setter Property="ToolTip" Value="{Binding 
                Path=(Validation.Errors)[0].ErrorContent, 
                RelativeSource={RelativeSource Self}}" />
        </Trigger>
    </Style.Triggers>
</Style>

此外,除非您正在评估多个条件,否则不应使用
多数据触发器