TabControl.SelectedContentTemplate Propiedad

Definición

Obtiene el objeto DataTemplate del elemento actualmente seleccionado.

public:
 property System::Windows::DataTemplate ^ SelectedContentTemplate { System::Windows::DataTemplate ^ get(); };
public System.Windows.DataTemplate SelectedContentTemplate { get; }
member this.SelectedContentTemplate : System.Windows.DataTemplate
Public ReadOnly Property SelectedContentTemplate As DataTemplate

Valor de propiedad

DataTemplate del elemento seleccionado.

Ejemplos

En el ejemplo siguiente se crea un ControlTemplate para .TabControl Establecer la ContentSource propiedad en crea "SelectedContent" alias en las SelectedContentpropiedades , SelectedContentTemplatey SelectedContentTemplateSelector .

<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="0,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>

En el ejemplo siguiente se enlaza la SelectedContentTemplate propiedad a la ContentPresenter.ContentTemplate propiedad mediante la extensión de marcado TemplateBinding.

<ContentPresenter Content="{TemplateBinding SelectedContent}" 
     ContentTemplate="{TemplateBinding SelectedContentTemplate}" 
     ContentTemplateSelector="{TemplateBinding SelectedContentTemplateSelector}" />

Comentarios

Actualiza TabControl esta propiedad para hacer referencia a para el DataTemplate elemento activo TabItem cuando cambia la selección de tabulación. Establezca TabControl.ContentTemplate o la ContentTemplate propiedad en para TabItem especificar para DataTemplate .TabItem

de ControlTemplateTabControl utiliza la ContentPresenter.ContentSource propiedad para enlazar la ContentPresenter.ContentTemplate propiedad a esta propiedad. Si crea un nuevo ControlTemplate para TabControl, asegúrese de enlazar la ContentPresenter.Content propiedad a esta propiedad estableciendo la ContentPresenter.ContentSource propiedad en "SelectedContent" o mediante templateBinding Markup Extension.

Uso de atributos XAML

<object property="{TemplateBinding SelectedContentTemplate}"/>  

Información sobre propiedades de dependencia

Campo identificador SelectedContentTemplateProperty
Propiedades de metadatos establecidas en true None

Se aplica a