Data binding 将WPF菜单项绑定到WPF选项卡控件项集合
我有一个WPF菜单和一个选项卡控件。我希望从选项卡控件上的选项卡项集合生成菜单项列表。我将tab控件绑定到集合以生成TabItems。我有一个TabItem样式,它使用ContentPresenter在TextBlock中显示TabItem文本。将选项卡项绑定到菜单时,菜单项为空。我正在使用样式设置器来设置菜单项名称,但我不确定我将使用TabItem的哪个属性来设置菜单项文本。我的场景是否有解决方案?当我事先不知道选项卡的数量时,是否可以绑定到选项卡项的Header属性?下面是我的xaml声明的副本。选项卡控件和项目:Data binding 将WPF菜单项绑定到WPF选项卡控件项集合,data-binding,wpf-controls,datatemplate,Data Binding,Wpf Controls,Datatemplate,我有一个WPF菜单和一个选项卡控件。我希望从选项卡控件上的选项卡项集合生成菜单项列表。我将tab控件绑定到集合以生成TabItems。我有一个TabItem样式,它使用ContentPresenter在TextBlock中显示TabItem文本。将选项卡项绑定到菜单时,菜单项为空。我正在使用样式设置器来设置菜单项名称,但我不确定我将使用TabItem的哪个属性来设置菜单项文本。我的场景是否有解决方案?当我事先不知道选项卡的数量时,是否可以绑定到选项卡项的Header属性?下面是我的xaml声明的
<DataTemplate x:Key="ClosableTabItemTemplate">
<DockPanel HorizontalAlignment="Stretch">
<Button
Command="{Binding Path=CloseWorkSpaceCommand}"
Content="X"
Cursor="Hand"
DockPanel.Dock="Right"
Focusable="False"
FontFamily="Courier"
FontSize="9"
FontWeight="Bold"
Margin="10,1,0,0"
Padding="0"
VerticalContentAlignment="Bottom"
Width="16" Height="16"
Background="Red"
/>
<ContentPresenter HorizontalAlignment="Center"
Content="{Binding Path=DisplayName}">
<ContentPresenter.Resources>
<Style TargetType="{x:Type TextBlock}"/>
</ContentPresenter.Resources>
</ContentPresenter>
</DockPanel>
</DataTemplate>
<DataTemplate x:Key="WorkspacesTemplate">
<TabControl
IsSynchronizedWithCurrentItem="True"
ItemsSource="{Binding}"
ItemTemplate="{StaticResource ClosableTabItemTemplate}"
Margin="10"
Background="#4C4C4C"/>
</DataTemplate>
我的菜单和部分样式列表
//我不确定应该使用哪个值,因为我没有使用header
创建以下样式并将标题属性绑定到ViewModel中的“显示”属性
<Style TargetType="{x:Type TabItem}">
<Setter Property="Header" Value="{Binding PropertyInViewModel}" />
</Style>
<Style TargetType="{x:Type TabItem}">
<Setter Property="Header" Value="{Binding PropertyInViewModel}" />
</Style>