问题描述
我创建了一个自定义控件(命名为 TextBlockHtml,它继承自标签),我添加了一个依赖属性(命名为 flowDocument[its transfer aassigned document])
<Style targettype="{x:Type local:TextBlockHtml}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate targettype="{x:Type local:TextBlockHtml}">
<Border>
<TextBlock HorizontalAlignment="{TemplateBinding HorizontalAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
Background="{TemplateBinding Background}" FontSize="{TemplateBinding FontSize}"
Foreground="{TemplateBinding Foreground}" Text="{Binding Path=Content,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type local:TextBlockHtml}}}"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Setter Property="ToolTip">
<Setter.Value>
<ToolTip>
<ToolTip.Style>
<Style targettype="ToolTip">
<Setter Property="ContentTemplate">
<Setter.Value>
<DataTemplate>
<FlowDocumentScrollViewer x:Name="PART_FlowDocument" VerticalScrollBarVisibility="Hidden" Document="{Binding Path=flowDocument,AncestorType={x:Type local:TextBlockHtml}}}">
</FlowDocumentScrollViewer>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
</ToolTip.Style>
</ToolTip>
</Setter.Value>
</Setter>
</Style>
问题在于,当我在一个容器中放置多个自定义控件时,即使我指定了不同的 Documents,所有自定义控件的 Tooltip 都会与第一个显示工具提示的控件相同。
MainWindows.xaml
<local:TextBlockHtml Content="Table Demo" flowDocument="{StaticResource TestFlowDocumentFlex}" />
<local:TextBlockHtml Content="List Demo" flowDocument="{StaticResource TableResource}" />
<local:TextBlockHtml Content="Html Test 1" flowDocument="{StaticResource ReportStructure}" />
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)