TabControl.SelectedContent Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene el contenido del objeto seleccionado TabItemactualmente.
public:
property System::Object ^ SelectedContent { System::Object ^ get(); };
public object SelectedContent { get; }
member this.SelectedContent : obj
Public ReadOnly Property SelectedContent As Object
Valor de propiedad
Contenido del objeto seleccionado TabItemactualmente. El valor predeterminado es null.
Ejemplos
En el ejemplo siguiente se usa la SelectedContent propiedad para obtener en Person el objeto seleccionado TabItemactualmente.
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
En el ejemplo siguiente se crea un ControlTemplate para .TabControl Al establecer la ContentSource propiedad en "SelectedContent", se crean alias en las SelectedContentpropiedades , SelectedContentTemplatey 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>
En el ejemplo siguiente se enlaza la SelectedContent propiedad a la ContentPresenter.Content propiedad mediante la extensión de marcado TemplateBinding.
<ContentPresenter Content="{TemplateBinding SelectedContent}"
ContentTemplate="{TemplateBinding SelectedContentTemplate}"
ContentTemplateSelector="{TemplateBinding SelectedContentTemplateSelector}" />
Comentarios
Esta propiedad se actualiza para hacer referencia al Content de activo TabItem cuando cambia la selección de pestañas.
de ControlTemplateTabControl utiliza la ContentPresenter.ContentSource propiedad para enlazar la ContentPresenter.Content propiedad a esta propiedad. Si crea un nuevo ControlTemplate para , asegúrese de enlazar la ContentPresenter.Content propiedad a esta propiedad estableciendo la ContentPresenter.ContentSource propiedad en "SelectedContent" o mediante la extensión de marcado TemplateBindingTabControl.
Uso de atributos XAML
<object property="{TemplateBinding SelectedContent}"/>
Información de la propiedad dependency
| Elemento | Importancia |
|---|---|
| Campo identificador | SelectedContentProperty |
Propiedades de metadatos establecidas en true |
Ninguno |