如何将 TabItem.Header 设置为从几个字段中获取的绑定,每个绑定以不同的大小显示,所有这些都位于原始标题文本的位置;不覆盖标题的默认样式和行为 - 我只需要文本。
我尝试设置它的模板,但随后它创建了一个包含内部控件的矩形,并且该矩形对用户单击没有响应,并且还具有控件样式,我希望此控件不可见,只有其文本可见.
我尝试了以下方法:
<TabControl ItemsSource="{Binding}">
<TabControl.ItemTemplate>
<DataTemplate>
<TabItem>
<TabItem.Header>
<MultiBinding StringFormat="{}{0}-{1}">
<Binding Path="Title"/>
<Binding Path="Category.Title"/>
</MultiBinding>
</TabItem.Header>
<TabItem.Content>
<TextBlock>
Here is what is gonna be in the TabItem - not header
</TextBlock>
</TabItem.Content>
</TabItem>
</DataTemplate>
</TabControl.ItemTemplate>
</TabControl>
但它没有显示任何东西。
我也尝试将 HeaderTemplate 设置为 DataTemplate 但发生的情况是,DataTemplate 覆盖了 TabItem 样式,当我单击文本时它不会转到单击的选项卡,此外,未选择的选项卡看起来很有趣,我明白了文本的矩形浮动,而我希望它是透明的。
所以,总结一下我的问题,我想用 StringFormat 将 TabItem.Header.Text 设置为 MultiBinding。