0
I SelectionChanging이라는 사용자 지정 DependencyProperty가있는 사용자 지정 TabControl이 있습니다. 음, TabItem에 액세스하여 애니메이션을 적용하려고하지만 액세스 방법을 모르겠습니다. 이 코드는 "tabItem"을 찾을 수 없다는 예외를 throw합니다.Storyboard TargetName WPF
EventTrigger에서이 요소 "tabItem"을 어떻게 참조 할 수 있습니까?
<DataTemplate x:Key="WorkSpaceTemplate">
<aero:SystemDropShadowChrome>
<controls:PinardTabControl IsSynchronizedWithCurrentItem="True"
Margin="0"
Padding="0"
BorderThickness="2"
BorderBrush="{StaticResource WorkspaceBorderBrush}"
Background="{StaticResource WorkspaceBackgroundBrush}"
ItemsSource="{Binding}" SnapsToDevicePixels="True">
<controls:PinardTabControl.Resources>
<Style TargetType="{x:Type TabItem}">
<Setter Property="Template" Value="{StaticResource ClosableTabItemTemplate}" />
</Style>
</controls:PinardTabControl.Resources>
<controls:PinardTabControl.Template>
<ControlTemplate TargetType="{x:Type TabControl}">
**<Grid x:Name="tabItem"**
ClipToBounds="true" SnapsToDevicePixels="true" KeyboardNavigation.TabNavigation="Local">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<TabPanel x:Name="HeaderPanel" IsItemsHost="true" Margin="2,2,2,0" Grid.Row="0" KeyboardNavigation.TabIndex="1" Panel.ZIndex="1"/>
<Border x:Name="ContentPanel" CornerRadius="2" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" KeyboardNavigation.DirectionalNavigation="Contained" Grid.Row="1" KeyboardNavigation.TabIndex="2" KeyboardNavigation.TabNavigation="Local">
<ContentPresenter x:Name="PART_SelectedContentHost" ContentSource="SelectedContent" Margin="{TemplateBinding Padding}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</Border>
</Grid>
</ControlTemplate>
</controls:PinardTabControl.Template>
<controls:PinardTabControl.Triggers>
<EventTrigger RoutedEvent="controls:PinardTabControl.SelectionChanging">
<BeginStoryboard>
<Storyboard Name="FormFade">
<DoubleAnimation Name="FormFadeAnimation"
**Storyboard.TargetName="tabItem"**
Storyboard.TargetProperty="(UIElement.Opacity)"
From="0.0" To="1.0" Duration="0:0:0.25"
AutoReverse="False" RepeatBehavior="1x"
/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</controls:PinardTabControl.Triggers>
</controls:PinardTabControl>
</aero:SystemDropShadowChrome>
</DataTemplate>
좋아요. H.B. 그런 식으로 시도해 보겠습니다. 고맙습니다! –
환영합니다. 다행히도 (아마도) 도움이되었습니다. :) –