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です。テキストが空またはnullの場合にTriggerToolTipが表示されないようにするにはどうすればよいですか?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ために作ることができますLabelToolTipAttachedProperty 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 に答える