WPF:如何在TabControl中居中显示TabItems

20

在我的XAML代码中,我有一个TabControl和多个选项卡。问题在于我无法使选项卡居中于内容区域。选项卡总是从左边开始,但我需要它们居中。这是我的代码:

<TabControl>
    <TabItem Header="Test 1"  Style="{StaticResource LeftTab}" Height="40" />
    <TabItem Header="Test 2"  Style="{StaticResource MiddleTab}"  />
    <TabItem Header="Test 3"  Style="{StaticResource MiddleTab}" />
    <TabItem Header="Test 4" Style="{StaticResource RightTab}"  />
</TabControl>

我不知道有什么属性可以居中这些项目 - 你有什么想法吗?


1
这是一个非常好的问题,因为我相信很多人都想做到这一点,但只是不愿意尝试。 - David Brunelle
1个回答

61

在内部,TabControl使用TabPanel来布局选项卡。使用默认模板,您只需要通过样式设置TabPanelHorizontalAlignment

<TabControl>
    <TabControl.Resources>
        <Style TargetType="{x:Type TabPanel}">
            <Setter Property="HorizontalAlignment" Value="Center" />
        </Style>
    </TabControl.Resources>

    <TabItem Header="Test 1" />
    <TabItem Header="Test 2" />
    <TabItem Header="Test 3" />
    <TabItem Header="Test 4" />
</TabControl>

哦...糟糕。那就是他的意思。而且解决方案也很简单。我会再次使用+++。 - user1228
谢谢!这是我问题的完美解决方案! - Alexander Ilg

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