我有一个TabControl,其中包含一些基于类的项目。我想将该类绑定到TabItem本身,以便我可以混合使用用户控制和类控制的TabItem。
我目前有。
XAML
<Window.Resources>
<TextBlock x:Key="TabItem_Prefab" Text="{Binding Name}"/>
</Window.Resources>
<TabControl>
<TabItem Header="A" Name="TabControl_A">
<StaticResource ResourceKey="TabItem_Prefab"/>
</TabItem>
<TabItem Header="B" Name="TabControl_B">
<StaticResource ResourceKey="TabItem_Prefab"/>
</TabItem>
<TabItem Header="Options">
<TextBlock Text="Stuff"/>
</TabItem>
</TabControl>
C#
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
ViewModelTest a = new ViewModelTest() { Name = "string" };
ViewModelTest b = new ViewModelTest() { Name = "Cheese" };
TabControl_A.DataContext = a;
TabControl_B.DataContext = b;
}
}
public class ViewModelTest
{
public string Name { get; set; }
}
这个问题是TabControl_A的标签显示&#34; cheese&#34;什么时候它应该被绑定到&#34; string&#34;。
我该怎么做才能解决这个问题?
答案 0 :(得分:0)
问题可能在于StaticResource TabItem_Prefab。 在我看来,通常的Binding工作
<TabControl>
<TabItem Header="A" Name="TabControl_A">
<TextBlock Text="{Binding Name}"/>
</TabItem>
<TabItem Header="B" Name="TabControl_B">
<TextBlock Text="{Binding Name}"/>
</TabItem>
<TabItem Header="Options">
<TextBlock Text="Stuff"/>
</TabItem>
</TabControl>
显示您的StaticResource。