Udostępnij za pośrednictwem


TabControl.SelectedContentTemplateSelector Właściwość

Definicja

DataTemplateSelector Pobiera element aktualnie wybranego elementu.

public:
 property System::Windows::Controls::DataTemplateSelector ^ SelectedContentTemplateSelector { System::Windows::Controls::DataTemplateSelector ^ get(); };
public System.Windows.Controls.DataTemplateSelector SelectedContentTemplateSelector { get; }
member this.SelectedContentTemplateSelector : System.Windows.Controls.DataTemplateSelector
Public ReadOnly Property SelectedContentTemplateSelector As DataTemplateSelector

Wartość właściwości

DataTemplateSelector

Element DataTemplateSelector aktualnie wybranego elementu. Wartość domyślna to null.

Przykłady

Poniższy przykład tworzy obiekt ControlTemplate dla .TabControl Ustawienie właściwości w celu "SelectedContent" utworzenia ContentSource aliasów na SelectedContentwłaściwości , i .SelectedContentTemplateSelector SelectedContentTemplate

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

Poniższy przykład wiąże SelectedContentTemplateSelector właściwość z właściwością ContentPresenter.ContentTemplateSelector przy użyciu rozszerzenia znaczników TemplateBinding.

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

Uwagi

Ta właściwość zostanie zaktualizowana TabControl w celu odwołania się do DataTemplateSelector elementu aktywnej TabItem , gdy wybór karty ulegnie zmianie. Ustaw TabControl.ContentTemplateSelector właściwość lub ContentTemplateSelector właściwość na obiekcie TabItem , aby określić właściwość DataTemplateSelector dla elementu TabItem.

Właściwość ControlTemplate używa ContentPresenter.ContentSource właściwości do powiązania ContentPresenter.ContentTemplateSelector właściwości z TabControl tą właściwością. Jeśli tworzysz nowy ControlTemplate element dla TabControlelementu , pamiętaj, aby powiązać ContentPresenter.Content właściwość z tą właściwością, ustawiając ContentPresenter.ContentSource właściwość na wartość "SelectedContent" lub używając rozszerzenia znaczników TemplateBinding.

Użycie atrybutu języka XAML

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

Informacje dotyczące właściwości zależności

Pole identyfikatora SelectedContentTemplateSelectorProperty
Właściwości metadanych ustawione na true Brak

Dotyczy