Проблема, с которой вы столкнулись, заключается в том, что, поскольку более крупный DataTemplate не отображается, его размер не учитывается при определении размера содержимого.
Ваши параметры:
1) Установка вручную (мин.)ширина / высота для соответствующих элементов управления (tabcontrol, Window, DataTemplate и т. д.)
2) Если вы знаете, что определенная вкладка всегда будет больше остальных, вы можете привязать ширину / высоту других вкладок кБольшая вкладка:
<TabItem>
<StackPanel Name="stackPanelBiggest" />
</TabItem>
<TabItem>
<StackPanel Width="{Binding ElementName=stackPanelBiggest, Path=ActualWidth}" />
</TabItem>
Я думаю, что для того, чтобы вышеупомянутые работали, самая большая вкладка должна быть показана первой.Хотя элемент управления вкладками уничтожает визуальное дерево предыдущей вкладки при переходе на другую вкладку, этот метод все еще работает для меня (несмотря на то, что ActualWidth должен быть равен 0 или NaN после переключения вкладок).