Freigeben über


TabControl.SelectedContentTemplate Eigenschaft

Definition

Ruft das DataTemplate aktuell ausgewählte Element ab.

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

Eigenschaftswert

Das DataTemplate ausgewählte Element.

Beispiele

Im folgenden Beispiel wird eine ControlTemplate für die TabControl. Festlegen der ContentSource Eigenschaft zum "SelectedContent" Erstellen von Aliasen für die SelectedContent, SelectedContentTemplateund SelectedContentTemplateSelector Eigenschaften.

<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>

Im folgenden Beispiel wird die Eigenschaft mithilfe der SelectedContentTemplateTemplateBinding-Markuperweiterung an die ContentPresenter.ContentTemplate Eigenschaft gebunden.

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

Hinweise

Die TabControl Eigenschaft wird aktualisiert, um auf die DataTemplateTabItem aktive Eigenschaft zu verweisen, wenn sich die Registerkartenauswahl ändert. Legen Sie TabControl.ContentTemplate die ContentTemplate Eigenschaft für ein TabItem , um die DataTemplate Eigenschaft für ein TabItem.

Die ControlTemplate Eigenschaft TabControl wird ContentPresenter.ContentSource verwendet, um die ContentPresenter.ContentTemplate Eigenschaft an diese Eigenschaft zu binden. Wenn Sie eine neue ControlTemplate für die TabControlEigenschaft erstellen, stellen Sie sicher, dass die ContentPresenter.Content Eigenschaft an diese Eigenschaft gebunden wird, indem Sie die ContentPresenter.ContentSource Eigenschaft auf "SelectedContent" oder mithilfe der TemplateBinding-Markuperweiterung festlegen.

Verwendung von XAML-Attributen

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

Informationen zur Abhängigkeitseigenschaft

Element Wert
Bezeichnerfeld SelectedContentTemplateProperty
Auf Metadateneigenschaften festgelegt true Nichts

Gilt für: