TabControl.SelectedContent 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
현재 선택된 내용의 내용을 가져옵니다 TabItem.
public:
property System::Object ^ SelectedContent { System::Object ^ get(); };
public object SelectedContent { get; }
member this.SelectedContent : obj
Public ReadOnly Property SelectedContent As Object
속성 값
현재 선택한 TabItem내용입니다. 기본값은 null입니다.
예제
다음 예제에서는 SelectedContent 현재 선택한 TabItem속성을 가져옵니다Person.
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
다음 예제에서는 에 대한 a를 ControlTemplateTabControl만듭니다. 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>
다음은 TemplateBinding 태그 확장을 사용하여 속성을 ContentPresenter.Content 속성에 바인딩 SelectedContent 하는 예제입니다.
<ContentPresenter Content="{TemplateBinding SelectedContent}"
ContentTemplate="{TemplateBinding SelectedContentTemplate}"
ContentTemplateSelector="{TemplateBinding SelectedContentTemplateSelector}" />
설명
이 속성은 탭 선택이 변경되면 활성 TabItem 항목을 참조 Content 하도록 업데이트됩니다.
ControlTemplate 속성을 TabControl 사용하여 ContentPresenter.ContentSource 이 속성에 ContentPresenter.Content 속성을 바인딩합니다. 새 속성을 만드는 ControlTemplate 경우 속성을 "SelectedContent"로 설정 ContentPresenter.ContentSource 하거나 TemplateBinding 태그 확장을 사용하여 속성을 이 속성에 바인딩 ContentPresenter.Content 해야 합니다.TabControl
XAML 특성 사용
<object property="{TemplateBinding SelectedContent}"/>
종속성 속성 정보
| Item | 가치 |
|---|---|
| 식별자 필드 | SelectedContentProperty |
메타데이터 속성이 다음으로 설정됩니다. true |
없음 |