C# 显示文本块文本的工具提示(具有自定义样式)
我有以下问题。我有一个带有DataGridTemplateColumn的DataGrid,我想用弹出窗口显示单元格的文本(因为它可以被修剪) 这是我的xaml代码:C# 显示文本块文本的工具提示(具有自定义样式),c#,.net,wpf,xaml,C#,.net,Wpf,Xaml,我有以下问题。我有一个带有DataGridTemplateColumn的DataGrid,我想用弹出窗口显示单元格的文本(因为它可以被修剪) 这是我的xaml代码: <DataGridTemplateColumn> <DataGridTemplateColumn.CellTemplate> <DataTemplate>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock
Text="{Binding Description}"
TextTrimming="CharacterEllipsis">
<TextBlock.ToolTip>
<ToolTip Style="{StaticResource ToolTipBrowserDescription}" ToolTip="test"/>
</TextBlock.ToolTip>
</TextBlock>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
风格:
<Style TargetType="{x:Type ToolTip}" x:Key="ToolTipBrowserDescription">
<Setter Property="DataContext" Value="{Binding RelativeSource={x:Static RelativeSource.Self}}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ToolTip}">
<Border BorderBrush="{StaticResource HT_Background_DarkGrey}" Background="{StaticResource HT_Background_LightGrey3}" BorderThickness="1">
<TextBlock Text="{Binding ToolTip}" FontWeight="Bold" TextWrapping="Wrap" Margin="5" MinWidth="50" MaxWidth="{TemplateBinding MaxWidth}"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
但是当我将ToolTip属性从“test”设置为“{Binding Description}”时,工具提示(显示的)是空的
有人能帮我找到解决办法吗。我被困了大约2小时 这应该能奏效 工具提示样式:
<Style x:Key="ToolTipBrowserDescription"
TargetType="{x:Type ToolTip}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ToolTip}">
<Border BorderBrush="{StaticResource HT_Background_DarkGrey}"
Background="{StaticResource HT_Background_LightGrey3}"
BorderThickness="1">
<TextBlock Text="{TemplateBinding Content}"
FontWeight="Bold"
TextWrapping="Wrap"
Margin="5"
MinWidth="50"
MaxWidth="{TemplateBinding MaxWidth}" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<TextBlock Text="{Binding Description}">
<TextBlock.Style>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="ToolTip">
<Setter.Value>
<ToolTip Style="{StaticResource ToolTipBrowserDescription}"
Content="{Binding Description}"/>
</Setter.Value>
</Setter>
</Style>
</TextBlock.Style>
</TextBlock>
文本块:
<Style x:Key="ToolTipBrowserDescription"
TargetType="{x:Type ToolTip}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ToolTip}">
<Border BorderBrush="{StaticResource HT_Background_DarkGrey}"
Background="{StaticResource HT_Background_LightGrey3}"
BorderThickness="1">
<TextBlock Text="{TemplateBinding Content}"
FontWeight="Bold"
TextWrapping="Wrap"
Margin="5"
MinWidth="50"
MaxWidth="{TemplateBinding MaxWidth}" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<TextBlock Text="{Binding Description}">
<TextBlock.Style>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="ToolTip">
<Setter.Value>
<ToolTip Style="{StaticResource ToolTipBrowserDescription}"
Content="{Binding Description}"/>
</Setter.Value>
</Setter>
</Style>
</TextBlock.Style>
</TextBlock>
您应该将模板绑定到内容,而不是
工具提示的工具提示
,非常感谢。你救了我一天!我总是忽略内容属性。所以我认为这是我的错;o) 但我仍然感兴趣,如果我的解决方案方法可行的话。