Wpf 通过TabControl.Resources的TabPanel的边距

Wpf 通过TabControl.Resources的TabPanel的边距,wpf,xaml,Wpf,Xaml,如何通过TabControl设置TabPanel的边距。参考资料,我尝试了以下代码: <TabControl.Resources> <Style TargetType="TabPanel"> <Setter Property="Margin" Value="500,0,0,0" />

如何通过TabControl设置TabPanel的边距。参考资料,我尝试了以下代码:

                    <TabControl.Resources>
                        <Style TargetType="TabPanel">
                            <Setter Property="Margin" Value="500,0,0,0" />
                        </Style>
                    </TabControl.Resources>
                </TabControl>
但由于某些原因,设置其宽度时不起作用:

                <TabControl.Resources>
                        <Style TargetType="TabPanel">
                            <Setter Property="Width" Value="500" />
                        </Style>
                    </TabControl.Resources>
                </TabControl>
目前我已经用模板设置了边距,但我想为一个单独的TabControl编辑边距


感谢Mikael Törnqvist

您需要在TabControl的模板中指定TabPanel的边距

比如:


非常感谢,这是一个有点代码的保证金!啊,我想TabPanel在设置边距时需要一些参考!是的,原因是因为您仍然希望维护默认模板,因此为了做到这一点,您还需要提供默认模板设置。我从以下位置获得默认模板:
    <Style  TargetType="{x:Type TabControl}">
        <Setter Property="OverridesDefaultStyle" Value="True" />
        <Setter Property="SnapsToDevicePixels" Value="True" />
        <Setter Property="Template">
        <Setter.Value>
          <ControlTemplate TargetType="{x:Type TabControl}">
            <Grid KeyboardNavigation.TabNavigation="Local">
              <Grid.RowDefinitions>
                <RowDefinition Height="Auto" />
                <RowDefinition Height="*" />
              </Grid.RowDefinitions>
              <VisualStateManager.VisualStateGroups>
                <VisualStateGroup x:Name="CommonStates">
                  <VisualState x:Name="Disabled">
                    <Storyboard>
                      <ColorAnimationUsingKeyFrames Storyboard.TargetName="Border"
                                                    Storyboard.TargetProperty="(Border.BorderBrush).
                        (SolidColorBrush.Color)">
                        <EasingColorKeyFrame KeyTime="0"
                                             Value="#FFAAAAAA" />
                      </ColorAnimationUsingKeyFrames>
                    </Storyboard>
                  </VisualState>
                </VisualStateGroup>
              </VisualStateManager.VisualStateGroups>
              <TabPanel x:Name="HeaderPanel"
                        Grid.Row="0"
                        Panel.ZIndex="1"
                        Margin="500,0,4,-1"
                        IsItemsHost="True"
                        KeyboardNavigation.TabIndex="1"
                        Background="Transparent" />
              <Border x:Name="Border"
                      Grid.Row="1"
                      BorderThickness="1"
                      CornerRadius="2"
                      KeyboardNavigation.TabNavigation="Local"
                      KeyboardNavigation.DirectionalNavigation="Contained"
                      KeyboardNavigation.TabIndex="2">
                <Border.Background>
                  <LinearGradientBrush EndPoint="0.5,1"
                                       StartPoint="0.5,0">
                    <GradientStop Color="{DynamicResource ContentAreaColorLight}"
                                  Offset="0" />
                    <GradientStop Color="{DynamicResource ContentAreaColorDark}"
                                  Offset="1" />
                  </LinearGradientBrush>
                </Border.Background>
                <Border.BorderBrush>
                  <SolidColorBrush Color="{DynamicResource BorderMediumColor}"/>
                </Border.BorderBrush>
                <ContentPresenter x:Name="PART_SelectedContentHost"
                                  Margin="4"
                                  ContentSource="SelectedContent" />
              </Border>
            </Grid>
          </ControlTemplate>
        </Setter.Value>
      </Setter>
    </Style>
</TabControl.Resources>