将TextBlock的文本绑定到WPF中的TabControl项

将TextBlock的文本绑定到WPF中的TabControl项,wpf,binding,tags,tabcontrol,textblock,Wpf,Binding,Tags,Tabcontrol,Textblock,我有一个带有tab控件的WPF窗口,我正在XAML文件中定义TabItems,如: <TabControl> <TabItem Name="tab1" Tag="Transactions"/> <TabItem Name="tab2" Tag="Promotions" /> ... </TabControl> 在屏幕的其他地方,我有一个文本块,我想用它来显示所选标签的标签值。它在屏幕初始加载时工作,并且每当选择“事务”选项

我有一个带有tab控件的WPF窗口,我正在XAML文件中定义TabItems,如:

<TabControl>
    <TabItem Name="tab1" Tag="Transactions"/>
    <TabItem Name="tab2" Tag="Promotions" />
    ...
</TabControl>
在屏幕的其他地方,我有一个文本块,我想用它来显示所选标签的标签值。它在屏幕初始加载时工作,并且每当选择“事务”选项卡时工作,但当选择其他选项卡时,它为空。为什么会这样?我如何使它显示任何选定选项卡的标记?以下是文本块:

<TextBlock Text="{Binding ElementName=tabControl1, Path=SelectedItem.Tag}"/>

这对我来说就像预期的那样。您设置了TabControl的名称,对吗

请注意,与示例代码不同,如果TabControl是通过ItemsSource填充的,则SelectedItem将不包含TabItem,而是包含从中创建TabItem的数据对象,因此绑定路径SelectedItem.Tag不起作用

使用的代码:

<!-- Both controls enclosed in a Stackpanel -->
<TabControl Name="tabControl1">
    <TabItem Name="tab1" Tag="Transactions"/>
    <TabItem Name="tab2" Tag="Promotions" />
</TabControl>
<TextBlock Text="{Binding ElementName=tabControl1, Path=SelectedItem.Tag}"/>

选项卡标题显然是空的,但它们是可选择的。

不,没有itemssource,它完全按照我描述的方式填充,在XAML文件中硬编码了七个选项卡。你能给我看一下你使用的文本块和tabcontrol的代码吗?除了第一个标签,我的文本块对所有标签都是空的。哇,真奇怪。。。我刚刚粘贴了你的文本块,现在它工作了。唯一的区别是我的有一个Name属性。我真的不知道有什么不同,但是谢谢。