0
<Label.ToolTip>
    <StackPanel Name="tTipTxt">                                    
        <StackPanel HorizontalAlignment="Left" VerticalAlignment="Top" Orientation="Horizontal">
            <TextBlock TextWrapping="Wrap" FontFamily="Times New Roman" FontSize="15" Foreground="Black" TextAlignment="Left" VerticalAlignment="Top" HorizontalAlignment="Left">
                <Run Text="" Name="tTipBody"/>
            </TextBlock>
        </StackPanel>
    </StackPanel>
</Label.ToolTip>

这是ToolTip当我的鼠标悬停在Label. 如果文本为空或为空,我如何创建一个Trigger来停止ToolTip显示自身?ToolTip

我试过这个 XAML 片段:

<Style TargetType="ToolTip">
    <Style.Triggers>
        <Trigger Property="Content"
                 Value="{x:Static sys:String.Empty}">
            <Setter Property="Visibility"
                    Value="Collapsed" />
        </Trigger>
        <Trigger Property="Content"
                 Value="{x:Null}">
            <Setter Property="Visibility"
                    Value="Collapsed" />
        </Trigger>
    </Style.Triggers>
</Style>

但是我仍然需要进入最深的堆栈才能获得文本更改的正确目标。您能帮我添加更多步骤来完成这项工作吗?

4

1 回答 1

0

您可以制作Style一个Label禁用ToolTip使用AttachedProperty ToolTipService.IsEnabled

例子:

<Style TargetType="Label">
    <Setter Property="ToolTipService.IsEnabled" Value="True" />
    <Style.Triggers>
        <Trigger Property="Content" Value="">
            <Setter Property="ToolTipService.IsEnabled" Value="False" />
        </Trigger>
        <Trigger Property="Content" Value="{x:Null}">
            <Setter Property="ToolTipService.IsEnabled" Value="False" />
        </Trigger>
    </Style.Triggers>
</Style>

这将ToolTipLabel标签ContentNull或时隐藏Empty

于 2013-03-05T20:20:28.407 回答