我有一个Xceed DataGrid,在其中一个列中有一个可能很长的文本。我只想显示文本的一部分,如果用户将鼠标悬停在其上,则工具提示将显示整个文本。
我试图像这样设置ToolTip的MaxWidh:
<DataTemplate x:Key="TooltipTextBlockTemplate">
<TextBlock Text="{Binding}" x:Name="DataTextBlock">
<TextBlock.ToolTip>
<TextBlock Text="{Binding}" TextWrapping="Wrap" MaxWidth="{Binding ActualWidth, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type xcdg:Column}}}" />
</TextBlock.ToolTip>
</TextBlock>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding}" Value="">
<Setter TargetName="DataTextBlock" Property="ToolTipService.IsEnabled" Value="False" />
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
我已尝试AncestorType={x:Type xcdg:Column}}}"
和AncestorType={x:Type TextBlock}}}"
,但它只是扩展到整个屏幕。