当内容绑定到工具提示时,Telerik WPF GridView标题文本消失

时间:2018-02-01 13:01:24

标签: c# wpf telerik-grid

我正在关注Telerik指南,以便在WPF GridView列标题上显示工具提示。任务是创建一个与列标题具有相同文本的工具提示。

在generic.xml中有这种风格:

<Style TargetType="telerik:GridViewHeaderCell">
     <Setter Property="ToolTip" Value="{Binding RelativeSource={RelativeSource Self}, Path=Content}" />
</Style>

当鼠标悬停在列标题上时,这确实有效并显示工具提示,但实际的标题正在被清除。

enter image description here

我想知道为什么会发生这种情况以及如何解决这个问题? GridViewHeaderCell继承自ContentControl。

1 个答案:

答案 0 :(得分:1)

我最后添加了一个转换器,因为“Content”值似乎是一个TextBlock:

public class TooltipObject : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            if (value != null)
            {
                return ((TextBlock)value).Text;
            }

            return value;
        }

        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            return value;
        }
    }

,样式如下:

<utils:TooltipObject x:Key="tooltip" />

...

<Style TargetType="telerik:GridViewHeaderCell">
            <Setter Property="ToolTip" Value="{Binding RelativeSource={RelativeSource Self}, Path=Content, Mode=TwoWay, Converter={StaticResource tooltip}}" />
        </Style>