WPF - 当值为null或为空时禁用工具提示

Ech*_*chO 2

我有这个问题,我在WPF上使用telerik,并在我的网格上使用源代码并进行正确的绑定.我希望能够在绑定的值为null或为空时禁用工具提示.怎么做到呢?这是一个例子:

<telerik:GridViewDataColumn x:Name="GRIDVIEWCOLUMN_ENDDATE" Header="Data de Conclus\xc3\xa3o" DataMemberBinding="{Binding ClosedDate, StringFormat=dd-MM-yyyy}" IsVisible="False" Width="auto" IsFilterable="False">\n    <telerik:GridViewDataColumn.ToolTipTemplate>\n        <DataTemplate>\n            <TextBlock Text="{Binding ClosedDate, StringFormat=dd-MM-yyyy}" FontFamily="Segoe UI Light" FontSize="13.667" />\n        </DataTemplate>\n    </telerik:GridViewDataColumn.ToolTipTemplate>\n</telerik:GridViewDataColumn>\n
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

小智 5

我知道这是一个相当老的问题,但我试图隐藏空工具提示,并在这里找到了一种更简单的方法: http: //wpfthoughts.blogspot.com/2014/02/hiding-empty-tooltips.html

基本上,如果您将资源字典放入 App.xaml 中,您可以自动隐藏应用程序中的所有空/空工具提示。

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:sys="clr-namespace:System;assembly=mscorlib">
    <Style TargetType="{x:Type 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> 
</ResourceDictionary>
Run Code Online (Sandbox Code Playgroud)

如果您只在一个地方需要它,那么它就太过分了,但这是一个超级简单的修复,可以防止您向每个具有工具提示的页面添加代码。希望这可以帮助别人。