TabControl.SelectedContentTemplateSelector Egenskap

Definition

Hämtar det DataTemplateSelector markerade objektet.

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

Egenskapsvärde

För DataTemplateSelector det markerade objektet. Standardvärdet är null.

Exempel

I följande exempel skapas en ControlTemplate för TabControl. Om du ContentSource anger egenskapen till "SelectedContent" skapas alias till SelectedContentegenskaperna , SelectedContentTemplateoch 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>

I följande exempel binder SelectedContentTemplateSelector egenskapen till ContentPresenter.ContentTemplateSelector egenskapen med hjälp av TemplateBinding-markeringstillägget.

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

Kommentarer

Uppdaterar TabControl den här egenskapen så att den DataTemplateSelector refererar till för den aktiva TabItem när flikmarkeringen ändras. Ange TabControl.ContentTemplateSelector eller egenskapen ContentTemplateSelector på en TabItem för att ange DataTemplateSelector för en TabItem.

ControlTemplate Egenskapen TabControl använder för ContentPresenter.ContentSource att binda egenskapen till den ContentPresenter.ContentTemplateSelector här egenskapen. Om du skapar en ny ControlTemplate för TabControlmåste du binda egenskapen till den ContentPresenter.Content här egenskapen genom att ange ContentPresenter.ContentSource egenskapen till "SelectedContent" eller med hjälp av TemplateBinding Markup Extension.

XAML-attributanvändning

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

Information om beroendeegenskap

Objekt Value
Identifierarfält SelectedContentTemplateSelectorProperty
Metadataegenskaper inställda på true Ingen

Gäller för