wpf - 无法在样式中设置工具提示内容
问题描述
我尝试在样式中设置 Tooltip 内容属性。但工具提示文本显示为 System.Windows.Style。有人可以帮我解决我做错的事情吗?
<TextBlock HorizontalAlignment="Left" Margin="149,45,0,0" TextWrapping="Wrap" Text="TextBlock" VerticalAlignment="Top" Height="29" Width="121">
<TextBlock.ToolTip>
<Style TargetType="{x:Type ToolTip}">
<Setter Property="Content" Value="ToolTip Test"/>
<Setter Property="Foreground" Value="Red"/>
<Setter Property="Foreground" Value="White"/>
</Style>
</TextBlock.ToolTip>
</TextBlock>
解决方案
您必须将 a 分配ToolTip
给该TextBox.ToolTip
属性,然后将其分配Style
给ToolTip.Style
:
<TextBlock HorizontalAlignment="Left" Text="TextBlock">
<TextBlock.ToolTip>
<ToolTip>
<ToolTip.Style>
<Style TargetType="{x:Type ToolTip}">
<Setter Property="Content" Value="ToolTip Test" />
<Setter Property="Foreground" Value="Red" />
<Setter Property="Foreground" Value="White" />
</Style>
</ToolTip.Style>
</ToolTip>
</TextBlock.ToolTip>
</TextBlock>
直接设置时FrameworkElement.ToolTip
,对象被隐式包装成ToolTip
. 由于Style
不是 aFrameworkElement
并且无法呈现,因此ContentControl
( ToolTip
) 调用object.ToString
内容(Style
在您的情况下为),默认情况下返回完全限定的类型名称string
。
推荐阅读
- html - 如何在 DOM 上显示由 API 调用返回的 HTML 响应?
- javascript - 用单词上的链接替换 %a 时出现问题
- sanity - 当我使用“sanity init”成功后尝试执行“sanity start”时出错
- python - 通过 Python 在 *.docx 文件的标头中添加标签
- ios - SwiftUI - 可重用组件,带有指向其他视图的链接作为参数
- java - 为什么该方法只返回 0 ?(爪哇)
- node.js - 如果 params 值为 Null,我如何获取所有数据,否则匹配数据?
- gnuplot - 首先绘制指定点,然后使用 gnuplot 从文件中绘制数据
- java - 在 CI/CD 管道部署期间如何在 DynamoDB 中进行数据库更改
- r - R 数据格式:yyyy-mm-dd hh mm ss 到 yyyy-mm-dd