Wpf 如何绑定父元素的属性
我有一个关于Silverlight的快速绑定问题。 我有一些扩展器,想覆盖他们的头模板Wpf 如何绑定父元素的属性,wpf,silverlight,binding,Wpf,Silverlight,Binding,我有一个关于Silverlight的快速绑定问题。 我有一些扩展器,想覆盖他们的头模板 <Controls:Expander Header="MyHeaderTitle" HeaderTemplate="{StaticResource MyExpanderHeaderTemplate}"> //Content </Controls:Expander> <Controls:Expander Header="MyNextHea
<Controls:Expander Header="MyHeaderTitle"
HeaderTemplate="{StaticResource MyExpanderHeaderTemplate}">
//Content
</Controls:Expander>
<Controls:Expander Header="MyNextHeaderTitle"
HeaderTemplate="{StaticResource MyExpanderHeaderTemplate}">
//Content
</Controls:Expander>
//内容
//内容
在标题模板中,我有一个文本框,希望将文本绑定到扩展器的标题
<DataTemplate x:Key="MyExpanderHeaderTemplate">
<TextBlock Text="{Binding Path=Header}">
// some triggering stuff
</TextBlock>
</DataTemplate>
//一些触发的东西
我用RelativeSource(Self和TemplatedParent)尝试了一些东西,但似乎没有任何效果。
有些想法会很棒,谢谢。看看
相对资源模式。FindAncestor
<TextBlock
Text="{Binding RelativeSource={RelativeSource RelativeSourceMode=FindAncestor, AncestorType={x:Type Controls:Expander}}}, Path=Header"/>
您是否尝试过:
<DataTemplate x:Key="MyExpanderHeaderTemplate">
<TextBlock Text="{Binding .}">
// some triggering stuff
</TextBlock>
</DataTemplate>
//一些触发的东西
就这么做吧
<DataTemplate x:Key="MyExpanderHeaderTemplate">
<TextBlock Text="{Binding}"/>
</DataTemplate>
谢谢您的快速回答。 FindAncestor在Silverlight下的工作方式与在WPF中的工作方式不同(无法解析AncestorType.) 但是{Binding}或{Binding.}做这个把戏