Bagikan melalui


TabControl.SelectedContentTemplateSelector Properti

Definisi

DataTemplateSelector Mendapatkan item terpilih saat ini.

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

Nilai Properti

Item DataTemplateSelector terpilih saat ini. Defaultnya adalah null.

Contoh

Contoh berikut membuat ControlTemplate untuk TabControl. ContentSource Mengatur properti untuk "SelectedContent" membuat alias ke SelectedContentproperti , , SelectedContentTemplatedan 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>

Contoh berikut mengikat SelectedContentTemplateSelector properti ke ContentPresenter.ContentTemplateSelector properti dengan menggunakan TemplateBinding Markup Extension.

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

Keterangan

Memperbarui TabControl properti ini untuk mereferensikan DataTemplateSelector ke untuk aktif TabItem saat pilihan tab berubah. Atur TabControl.ContentTemplateSelectorContentTemplateSelector atau properti pada TabItem untuk menentukan DataTemplateSelector untuk TabItem.

ControlTemplate dari TabControl menggunakan ContentPresenter.ContentSource properti untuk mengikat properti ke ContentPresenter.ContentTemplateSelector properti ini. Jika Anda membuat baru ControlTemplate untuk TabControl, pastikan untuk mengikat ContentPresenter.Content properti ke properti ini dengan mengatur ContentPresenter.ContentSource properti ke "SelectedContent" atau dengan menggunakan TemplateBinding Markup Extension.

Penggunaan Atribut XAML

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

Informasi Properti Dependensi

Item Nilai
Bidang pengidentifikasi SelectedContentTemplateSelectorProperty
Properti metadata diatur ke true Tidak

Berlaku untuk