Я сделал анимацию непрозрачности, используя Blend на одном из моих двух UserControls
, удалил <UserControl.Resources>
, <UserControl.Triggers>
и Storyboard.TargetName
из этого, поместил его в App.xaml
и он выглядит так:
<Storyboard x:Key="Loaded">
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" >
<EasingDoubleKeyFrame KeyTime="0" Value="0"/>
<EasingDoubleKeyFrame KeyTime="0:0:3" Value="1"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
, когда я вызываю его в коде, подобном этому, перед установкой Content
моего ContentControl
:
Storyboard sb = FindResource("Loaded") as Storyboard;
sb.begin(uc1);
content.Content = uc1;
//and
Storyboard sb = FindResource("Loaded") as Storyboard;
sb.begin(uc2);
content.Content = uc2;
, он работает как положено. Для анимации преобразования я удалил TransformGroup
в дополнение к вышеперечисленным, и теперь он выглядит следующим образом:
<Storyboard x:Key="Unloaded">
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[3].(TranslateTransform.X)">
<EasingDoubleKeyFrame KeyTime="0" Value="0"/>
<EasingDoubleKeyFrame KeyTime="0:0:3" Value="-800"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
Если я вызываю его таким же образом, я получаю эту ошибку:
System.InvalidOperationException: ''[Unknown]' property does not point to a DependencyObject in path '(0).(1)[3].(2)'.'
Как решить проблему?