Используя один из инструментов ShowMeTheTemplate или Microsoft Expression Blend , вы можете проверить шаблоны элементов управления, которые Microsoft по умолчанию внедрила для различных тем.
ДляВ Windows Classic шаблон элемента управления TabControl выглядит следующим образом:
<ControlTemplate TargetType="{x:Type TabControl}">
<Grid ClipToBounds="true" SnapsToDevicePixels="true" KeyboardNavigation.TabNavigation="Local">
...
<TabPanel .../>
<Grid ...>
<Microsoft_Windows_Themes:ClassicBorderDecorator ...>
<ContentPresenter x:Name="PART_SelectedContentHost" Margin="2,2,2,2" .../>
</Microsoft_Windows_Themes:ClassicBorderDecorator>
</Grid>
</Grid>
<ControlTemplate.Triggers>
...
</ControlTemplate.Triggers>
</ControlTemplate>
Для Luna это выглядит так:
<ControlTemplate TargetType="{x:Type TabControl}">
<Grid ClipToBounds="true" SnapsToDevicePixels="true" KeyboardNavigation.TabNavigation="Local">
...
<TabPanel .../>
<Border ...>
<ContentPresenter x:Name="PART_SelectedContentHost" Margin="{TemplateBinding Padding}" .../>
</Border>
</Grid>
<ControlTemplate.Triggers>
...
</ControlTemplate.Triggers>
</ControlTemplate>
В Luna заполнение TabControl привязано к границеContentPresenter;в Windows Classic поле установлено на 2.
Лично я считаю, что это ошибка.Возможно, вы захотите создать отчет об ошибке в http://connect.microsoft.com/.
В качестве обходного пути вы можете определить свой собственный шаблон содержимого:
<TabControl>
<TabControl.ContentTemplate>
<DataTemplate>
<ContentPresenter Content="{Binding}" Margin="50,5,10,5"/>
</DataTemplate>
</TabControl.ContentTemplate>
...
<TabControl>