TabControl.SelectedContentTemplateSelector 屬性

定義

取得目前所選項目的 DataTemplateSelector

C#
public System.Windows.Controls.DataTemplateSelector SelectedContentTemplateSelector { get; }

屬性值

目前選取之項目的 DataTemplateSelector。 預設為 null

範例

下列範例會 ControlTemplateTabControl 建立 。 ContentSource將 屬性設定為 ,以 "SelectedContent" 建立 、 SelectedContentTemplateSelectedContentTemplateSelector 屬性的 SelectedContent 別名。

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

下列範例會 SelectedContentTemplateSelector 使用TemplateBinding 標記延伸,將 屬性系結至 ContentPresenter.ContentTemplateSelector 屬性。

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

備註

更新 TabControl 此屬性,以在索引標籤選取範圍變更時,針對 DataTemplateSelector 使用 TabItem 中的 參考。 設定 TabControl.ContentTemplateSelectorContentTemplateSelector 上的 TabItem 屬性,以指定 DataTemplateSelectorTabItem

ControlTemplateTabControlContentPresenter.ContentSource 使用 屬性將 屬性系結 ContentPresenter.ContentTemplateSelector 至這個屬性。 如果您為 TabControl 建立 新的 ControlTemplate ,請務必將 屬性設定 ContentPresenter.ContentSource 為 「SelectedContent」 或使用TemplateBinding 標記延伸,將 屬性系結 ContentPresenter.Content 至此屬性。

XAML Attribute Usage

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

相依性屬性資訊

識別碼欄位 SelectedContentTemplateSelectorProperty
設定為 的中繼資料屬性 true

適用於

產品 版本
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9