在WPF中使选项卡控件标题可滚动

9
如标题所述,我想将我的TabControl的标题更改为可滚动的。
原因是:我有太多的tabItem,换行对我来说不是最好的解决方案。因此,我想将其更改为:
(有箭头指示的滚动条):
请问有人可以帮助我,并展示如何做到这一点吗?(我正在使用wpf)

请查看WPF:TabControl系列-第1部分:颜色和大小。第3部分是关于滚动问题的讨论。 - LarsTech
@LarsTech 这并不是我想要的,没有滚动条,而他的解决方案又过于复杂!谢谢您的评论。 - NTinkicht
2
这里还有WPF单行选项卡控件 - LarsTech
@LarsTech 谢谢你,伙计 :D 这就是我想要的! - NTinkicht
1个回答

16

对我来说,将TabControl.Template更改为类似于这样简单的东西似乎有效。

<TabControl ...>
    <TabControl.Template>
        <ControlTemplate TargetType="{x:Type TabControl}">
            <Grid>
                <Grid.RowDefinitions>
                    <RowDefinition Height="Auto"/>
                    <RowDefinition/>
                </Grid.RowDefinitions>
                <ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Disabled">
                    <TabPanel x:Name="HeaderPanel" IsItemsHost="True" Margin="0,4,0,0"/>
                </ScrollViewer>
                <ContentPresenter x:Name="PART_SelectedContentHost" Margin="4" ContentSource="SelectedContent" Grid.Row="1"/>
            </Grid>
        </ControlTemplate>
    </TabControl.Template>
</TabControl>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接