TabControl.SelectedContentTemplateSelector 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得目前所選項目的 DataTemplateSelector。
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
屬性值
目前選取之項目的 DataTemplateSelector。 預設為 null
。
範例
下列範例會 ControlTemplate 為 TabControl 建立 。
ContentSource將 屬性設定為 ,以 "SelectedContent"
建立 、 SelectedContentTemplate 和 SelectedContentTemplateSelector 屬性的 SelectedContent 別名。
<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 屬性。
<ContentPresenter Content="{TemplateBinding SelectedContent}"
ContentTemplate="{TemplateBinding SelectedContentTemplate}"
ContentTemplateSelector="{TemplateBinding SelectedContentTemplateSelector}" />
備註
更新 TabControl 此屬性,以在索引標籤選取範圍變更時,針對 DataTemplateSelector 使用 TabItem 中的 參考。 設定 TabControl.ContentTemplateSelector 或 ContentTemplateSelector 上的 TabItem 屬性,以指定 DataTemplateSelector 的 TabItem 。
ControlTemplate的 TabControl 會 ContentPresenter.ContentSource 使用 屬性將 屬性系結 ContentPresenter.ContentTemplateSelector 至這個屬性。 如果您為 TabControl 建立 新的 ControlTemplate ,請務必將 屬性設定 ContentPresenter.ContentSource 為 「SelectedContent」 或使用TemplateBinding 標記延伸,將 屬性系結 ContentPresenter.Content 至此屬性。
XAML Attribute Usage
<object property="{TemplateBinding SelectedContentTemplateSelector}"/>
相依性屬性資訊
識別碼欄位 | SelectedContentTemplateSelectorProperty |
設定為 的中繼資料屬性 true |
無 |