我目前正致力于设计一个TabControl,并且有一个奇怪的想法:
如果我想为我的应用程序中的所有选项卡设置默认的ControlTemplate,但为每个TabControl指定不同的DataTemplate(取决于我想要显示的数据),该怎么办?
你怎么看?你知道是否有解决方案吗?
也许我采取了错误的方式......
感谢您的想法: - )
答案 0 :(得分:1)
您无法为TabControl指定DataTemplate,为TabControl的所有TabItem中 显示的数据指定DataTemplate。
答案 1 :(得分:0)
我找到了办法! 实际上,TabControl的ItemContainerStyle属性提供了三个模板:
我是这样做的(风格):
<Style x:Key="MyTabItemStyle" TargetType="{x:Type TabItem}">
<Setter Property="Template"
Value="{StaticResource ControlTemplate}"/>
<Setter Property="Header" Value="{Binding}"/>
<Setter Property="HeaderTemplate"
Value="{StaticResource HeaderTemplate}"/>
<Setter Property="Content" Value="{Binding}"/>
<Setter Property="ContentTemplate"
Value="{StaticResource ContentTemplate}"/>
</Style>
并将其链接到TabControl:
<TabControl ItemsSource="{Binding Elements}"
SelectedIndex="{Binding SelectedIndex}"
ItemContainerStyle="{DynamicResource MyTabItemStyle}">
你怎么看?