使用WPF部分创建选项卡式边栏

Kia*_*eng 6 .net c# wpf user-controls controls

我正在尝试使用部分创建带标签的侧边栏,如WPF中的以下内容.我考虑过一些方法,但有更简单,更优雅的方法吗?

方法1:ListBox

使用ListBox和将SelectedItem绑定到一个值,右边的内容控件绑定到该值.为了区分标题和部分,我使用DataTemplate选择器.


方法2:RadioBUtton/Check Boxes/ToggleButtons

使用单选按钮,我将所选项目绑定到内容控件.但是,由于WPF错误,我将不得不使用值转换器将它们链接在一起.


选项卡式界面分为几个部分

在此输入图像描述

ken*_*ner 2

添加更多样式,我认为它可以很好地工作

    <TabControl TabStripPlacement="Left">
        <TabControl.Resources>
            <Style TargetType="TabItem" x:Key="SideBarSectionStyle">
                <Setter Property="IsEnabled" Value="False" />
                <Setter Property="FontSize" Value="16" />
                <Setter Property="Foreground" Value="LightGreen" />
            </Style>
        </TabControl.Resources>

        <TabItem Header="Section A" Style="{StaticResource SideBarSectionStyle}" />
        <TabItem Header="Tab Item 1" IsSelected="True" />
        <TabItem Header="Tab Item 2" />
        <TabItem Header="Tab Item 3" />
        <TabItem Header="Tab Item 4" />
        <TabItem Header="Tab Item 5" />
        <TabItem Header="Section B" Style="{StaticResource SideBarSectionStyle}" />
        <TabItem Header="Tab Item 6" />
        <TabItem Header="Tab Item 7" />
        <TabItem Header="Tab Item 8" />
        <TabItem Header="Tab Item 9" />
    </TabControl>
Run Code Online (Sandbox Code Playgroud)