WPF 选项卡 headers 重新排列 window 调整大小

WPF tab headers rearrange on window resize

我有一个带有 6 个选项卡的 WPF 应用程序 headers。它们水平排列在应用程序的顶部,以便它们跨越 window-- 的整个宽度——也就是说,当我拖动 window 来调整它的大小时,tabItems 与 window。 问题是,当我拖动 window 时,每 8-20 个像素左右它们就会重新排列 1 或 2 个像素。换句话说,我希望它们看起来像

| Tab1 | Tab2 | Tab3 | Tab4 | Tab5 | Tab6 |

例如,window 的宽度为 300 像素。当 window 为 301-308 像素宽时,选项卡继续具有上述排列,但在 309 和 310 像素宽时,它们看起来像这样:

|    |Tab4|     |Tab5|     |Tab6|   |
|    |Tab1|     |Tab2|     |Tab3|   |

最后,当 window 的宽度为 311 像素时,选项卡会恢复到原来的排列方式。有没有人见过这个问题?它可能来自哪里?

TabControl 的预定义样式使用 TabPanel 来显示选项卡 headers (参考:https://msdn.microsoft.com/it-it/library/ms754137(v=vs.100).aspx)。

如果宽度小于需要,TabPanel 可以在多行中显示 headers。

您可以更改 TabControl 的样式,并根据需要将 TabPanel 替换为另一个容器(例如,水平方向的 StackPanel)。