wpf expander 设置新的 header 模板后,无法绑定数据
<Window.Resources>
<DataTemplate x:Key="listitemExpander">
<Expander Header="{Binding XPath=ID}" Margin="0" Grid.Row="1" VerticalAlignment="Top" IsExpanded="True" HorizontalAlignment="Stretch" MouseLeftButtonDown="Expander_MouseLeftButtonDown">
<Expander.HeaderTemplate>
<DataTemplate>
<Grid>
<TextBlock HorizontalAlignment="Right" Margin="0,0,-55.147,-15.837" TextWrapping="Wrap" Text="{Binding XPath=ID}" VerticalAlignment="Stretch" d:LayoutOverrides="Height"/>
<CheckBox Content="" HorizontalAlignment="Right" Margin="0,0,-99.147,-1.837" VerticalAlignment="Bottom"/>
</Grid>
</DataTemplate>
</Expander.HeaderTemplate>
.....
以上是简要的代码
我做一个listbox ,listbox 前台代码绑定如下 I
temTemplate="{StaticResource listitemExpander}"
后台listbox绑定XmlDataProvider,
上面绑定的源是成功的,我做过测试.
现在长话短说,如果将<Expander.HeaderTemplate>这个节点内的内容全部删除, 模板内因有<Expander Header="{Binding XPath=ID}" 这个绑定,所以Expander的Header显示绑定数据,但是如果将 Header="{Binding XPath=ID}"删除,
在<TextBlock Text="{Binding XPath=ID}" ...>这里绑定 ID,则怎么也不显示数据
我想将<TextBlock Text="{Binding XPath=ID}" ...> 直接改为<TextBlock Text="{Binding /*这里绑定Expander的header,反正header也被隐藏了不显示*/}" ...>却不知道该怎么在这个模板中绑定 expander的header,求高手解答.先谢谢了.