C# WPF:两个选项卡控件/切换在Win7/.NET 4.5下工作,但在Windows 8.1/.NET 4.5.1下不工作

C# WPF:两个选项卡控件/切换在Win7/.NET 4.5下工作,但在Windows 8.1/.NET 4.5.1下不工作,c#,.net,wpf,C#,.net,Wpf,我有一个有两个选项卡控件的窗口。一个左对齐,另一个右对齐。选项卡控件的标题在顶行中对齐 每当我单击一个TabItem时,另一个TabControl将不聚焦 这在我的开发PC(Windows 7、.NET Framework 4.5)上运行得非常好 但是,当我在装有Windows 8.1(.NET 4.5.1)的PC上执行它时,我无法切换到右对齐选项卡控件。当我单击其中的选项卡项时,什么也没有发生 主窗口的XAML: <Window x:Class="TabGroupProblem.

我有一个有两个选项卡控件的窗口。一个左对齐,另一个右对齐。选项卡控件的标题在顶行中对齐

每当我单击一个TabItem时,另一个TabControl将不聚焦

这在我的开发PC(Windows 7、.NET Framework 4.5)上运行得非常好

但是,当我在装有Windows 8.1(.NET 4.5.1)的PC上执行它时,我无法切换到右对齐选项卡控件。当我单击其中的选项卡项时,什么也没有发生

主窗口的XAML:

    <Window x:Class="TabGroupProblem.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            Title="MainWindow" Height="350" Width="525" Loaded="Window_Loaded">
        <Grid>
            <TabControl GotFocus="TabControl_GotFocus" x:Name="c1">
                <TabItem Header="One">h</TabItem>
                <TabItem Header="Two">i</TabItem>
            </TabControl>

            <TabControl GotFocus="TabControl_GotFocus_1" x:Name="c2">
                <TabControl.Resources>
                    <Style TargetType="{x:Type TabPanel}">
                        <Setter Property="HorizontalAlignment" Value="Right" />
                    </Style>
                </TabControl.Resources>
                <TabItem Header="Three">j</TabItem>
                <TabItem Header="four">k</TabItem>
            </TabControl>
        </Grid>
    </Window>
为什么会发生这种情况,我能做些什么

编辑:
在我的开发PC上将目标框架切换到.NET 4.5.1。在我的PC上切换TabControls仍然有效(在Windows 8.1 PC上仍然无效)

您将两个TabControls直接放置在彼此的上方,但仍然希望能够聚焦下面的一个。这在Win7中显然是可行的,但Windows 8似乎使用了另一个控制模板,它可能会吃掉鼠标在选项卡面板“空白”位上的点击

也许它添加了一个透明笔刷,因此您可以尝试一个简单的:

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


然而,我怀疑放弃tab控件,自己创建一些样式化的按钮会更容易些?

遗憾的是,这不起作用。我猜按钮会在“堆叠”画布/网格之间切换?(所以我必须将每个选项卡项转换为这样一个层?)
<TabControl.Resources>
    <Style TargetType="{x:Type TabPanel}">
        <Setter Property="Background" Value="{x:Null}" />
    </Style>
</TabControl.Resources>