我们有一种语言机制,在加载时通过我们的 XAML 页面递归,检查每个元素的 Tag 属性并使用其值检索字符串资源以应用于该元素。它目前不支持工具提示,我们必须在每个页面上都有特定的代码才能将语言资源应用于它们。我正在尝试将此功能添加到我们的递归机制中。
所以我在树中递归,对于每个元素 a FrameworkElement
,我想知道它是否有 ToolTipService ,如果有, ToolTipService 是否有 ToolTip 元素。如果是,我想检索 Tag 属性(如果有),并使用我使用标签查找的值设置 Content 属性。我的问题是我不知道如何确定是否有工具提示并访问它。
这是一个显示元素的示例,在本例中为图像。如果我在树中递归并且当前元素是图像,我如何到达工具提示?
<Image x:Name="DateRangeSelectorButton" Grid.Column="0" Source="Images/OvalClock.png" Margin="2,0,2,0" Cursor="Hand">
<ToolTipService.ToolTip>
<ToolTip Tag="dttlDateRangeSelectorButtonTooltip"/>
</ToolTipService.ToolTip>
</Image>