TabControl.SelectedContent Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan konten dari yang saat ini dipilih TabItem.
public:
property System::Object ^ SelectedContent { System::Object ^ get(); };
public object SelectedContent { get; }
member this.SelectedContent : obj
Public ReadOnly Property SelectedContent As Object
Nilai Properti
Konten yang saat ini dipilih TabItem. Defaultnya adalah null.
Contoh
Contoh berikut menggunakan SelectedContent properti untuk mendapatkan Person di yang saat ini dipilih TabItem.
if (tabCtrl1.SelectedContent is Person)
{
Person selectedPerson = tabCtrl1.SelectedContent as Person;
StringBuilder personInfo = new StringBuilder();
personInfo.Append(selectedPerson.FirstName);
personInfo.Append(" ");
personInfo.Append(selectedPerson.LastName);
personInfo.Append(", ");
personInfo.Append(selectedPerson.HomeTown);
MessageBox.Show(personInfo.ToString());
}
If TypeOf tabCtrl1.SelectedContent Is Person Then
Dim selectedPerson As Person = tabCtrl1.SelectedContent
Dim personInfo As StringBuilder = New StringBuilder()
personInfo.Append(selectedPerson.FirstName)
personInfo.Append(" ")
personInfo.Append(selectedPerson.LastName)
personInfo.Append(", ")
personInfo.Append(selectedPerson.HomeTown)
MessageBox.Show(personInfo.ToString())
End If
Contoh berikut membuat ControlTemplate untuk TabControl. ContentSource Mengatur properti ke "SelectedContent" membuat alias ke SelectedContentproperti , SelectedContentTemplate, dan 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 SelectedContent properti ke ContentPresenter.Content properti dengan menggunakan TemplateBinding Markup Extension.
<ContentPresenter Content="{TemplateBinding SelectedContent}"
ContentTemplate="{TemplateBinding SelectedContentTemplate}"
ContentTemplateSelector="{TemplateBinding SelectedContentTemplateSelector}" />
Keterangan
Properti ini diperbarui untuk mereferensikan Content aktif TabItem ketika pilihan tab berubah.
ControlTemplate dari TabControl menggunakan ContentPresenter.ContentSource properti untuk mengikat properti ke ContentPresenter.Content 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 SelectedContent}"/>
Informasi Properti Dependensi
| Item | Nilai |
|---|---|
| Bidang pengidentifikasi | SelectedContentProperty |
Properti metadata diatur ke true |
Tidak |