gpt4 book ai didi

c# - 将 TabControl.Items 绑定(bind)到 MenuItem

转载 作者:行者123 更新时间:2023-11-30 21:24:51 24 4
gpt4 key购买 nike

我在应用程序中使用 TabControl 作为我的主要工作区,并且我想添加一个“窗口”菜单项来列出打开的选项卡的标题。应检查事件(即 - 聚焦)选项卡。

我试过如下使用 ItemsTemplate:

            <MenuItem Header="_Window" ItemsSource="{Binding ElementName=ux_workspace, Path=Items}">
<MenuItem.ItemTemplate>
<DataTemplate>
<MenuItem Header="{Binding Path=Header}" IsCheckable="True" IsChecked="{Binding IsFocused, Mode=OneWay}">
</DataTemplate>
</MenuItem.ItemTemplate>
</MenuItem>

每个 MenuItem 然后被“嵌套”,可以这么说,在另一个 MenuItem 内部,这实际上不是预期的结果(复选框位于标题区域,内部项目周围有一个单独的边框)。

有更好的方法吗?

提前致谢。

最佳答案

虽然看起来应该有一种方法可以使用模板来完成此操作,但创建和使用样式似乎可行:

<Style x:Key="TabMenuItem" TargetType="MenuItem">
<Setter Property="Header" Value="{Binding Path=Header}" />
<Setter Property="IsCheckable" Value="True" />
<Setter Property="IsChecked" Value="{Binding Path=IsFocused, Mode=OneWay}" />
</Style>

<MenuItem Header="_Window"
ItemsSource="{Binding ElementName=ux_workspace, Path=Items}"
ItemContainerStyle="{StaticResource TabMenuItem}" />

关于c# - 将 TabControl.Items 绑定(bind)到 MenuItem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/997017/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com