我写了一个附加的属性,其中存储了一个帮助文本。这个帮助文本显示在主窗口的右侧。这工作正常。
现在,我想为每个控件添加一个工具提示。工具提示的内容应该与helptext扩展相同。
XAML代码:
<ListView ctrl:ListViewLayoutManager.Enabled="true"
x:Name="ListViewSources"
ItemsSource="{Binding SourceItems}"
ItemContainerStyle="{DynamicResource ListViewItemStyleAlternate}"
Height="150"
MinWidth="350"
Helper:HelpExtension.IsControl="true"
Helper:HelpExtension.HelpText="{x:Static strings:GUIResource.HelpProfilesSourcesDescriptionText}" >
<ListView.ToolTip>
<ToolTip Style="{DynamicResource Own_TooltipStyle}"></ToolTip>
</ListView.ToolTip>
下面是样式的代码:
<Style x:Key="Own_TooltipStyle" TargetType="{x:Type ToolTip}">
<Setter Property="Background" Value="LightYellow"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ToolTip}">
<Grid>
<TextBlock Text="{Binding Path=Helper:HelpExtension.HelpText, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type ListView}}}" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
如果我运行这个程序,我会得到绑定错误:
系统.Windows.数据错误:39:BindingExpression路径错误:在“object”“ListView”(Name ='ListViewSources')上未找到“Helper:HelpExtension”属性。BindingExpression:Path=Helper:HelpExtension.HelpText;DataItem='ListView'(Name='ListViewSources');目标元素为“TextBlock”(Name ='');目标属性为“Text”(类型为“String”)
有谁知道如何将TextBlock绑定到Helper:HelpExternsion.HelpText的内容?
2条答案
按热度按时间bttbmeg01#
只需在附加的属性名称周围加上括号:
ddarikpa2#
你的意思是绑定到附加的属性吗?在这种情况下,你需要额外的括号:
例如,参见here。