C# 完成动画后如何导航到下一页?
我正在尝试在WindowsPhone8中为Splashscreen制作动画。我已经完成了对象反弹的动画。但在完成动画后,它应该立即切换到下一页。如何完成这项任务C# 完成动画后如何导航到下一页?,c#,xaml,windows-phone-7,expression-blend,C#,Xaml,Windows Phone 7,Expression Blend,我正在尝试在WindowsPhone8中为Splashscreen制作动画。我已经完成了对象反弹的动画。但在完成动画后,它应该立即切换到下一页。如何完成这项任务 //MainPage.xaml <phone:PhoneApplicationPage.Resources> <Storyboard x:Name="Storyboard1"> <DoubleAnimationU
//MainPage.xaml
<phone:PhoneApplicationPage.Resources>
<Storyboard x:Name="Storyboard1">
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(CompositeTransform.TranslateY)" Storyboard.TargetName="arc">
<EasingDoubleKeyFrame KeyTime="0" Value="-555">
<EasingDoubleKeyFrame.EasingFunction>
<BounceEase EasingMode="EaseOut"/>
</EasingDoubleKeyFrame.EasingFunction>
</EasingDoubleKeyFrame>
<DiscreteDoubleKeyFrame KeyTime="0:0:5" Value="-150"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</phone:PhoneApplicationPage.Resources>
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<es:Arc x:Name="arc" ArcThickness="20" ArcThicknessUnit="Pixel" EndAngle="360" HorizontalAlignment="Left" Height="100" Margin="174,369.5,0,0" Stretch="None" Stroke="Black" StartAngle="0" UseLayoutRounding="False" VerticalAlignment="Top" Width="100" RenderTransformOrigin="0.5,0.5" Loaded="arc_Loaded">
<es:Arc.RenderTransform>
<CompositeTransform/>
</es:Arc.RenderTransform>
<es:Arc.Fill>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FF3B9E5B" Offset="0"/>
<GradientStop Color="#FF8D2727" Offset="1"/>
</LinearGradientBrush>
</es:Arc.Fill>
</es:Arc>
</Grid>
//MainPage.xaml
您可以在sotryboard事件完成后导航到下一页
<Storyboard x:Name="Storyboard1" Completed="Storyboard_Completed_1">
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(CompositeTransform.TranslateY)" Storyboard.TargetName="arc">
<EasingDoubleKeyFrame KeyTime="0" Value="-555">
<EasingDoubleKeyFrame.EasingFunction>
<BounceEase EasingMode="EaseOut"/>
</EasingDoubleKeyFrame.EasingFunction>
</EasingDoubleKeyFrame>
<DiscreteDoubleKeyFrame KeyTime="0:0:5" Value="-150"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
您可以在sotryboard的已完成事件中导航到下一页
<Storyboard x:Name="Storyboard1" Completed="Storyboard_Completed_1">
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(CompositeTransform.TranslateY)" Storyboard.TargetName="arc">
<EasingDoubleKeyFrame KeyTime="0" Value="-555">
<EasingDoubleKeyFrame.EasingFunction>
<BounceEase EasingMode="EaseOut"/>
</EasingDoubleKeyFrame.EasingFunction>
</EasingDoubleKeyFrame>
<DiscreteDoubleKeyFrame KeyTime="0:0:5" Value="-150"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
您可以处理情节提要的
已完成
事件
Storyboard myStoryboard = Resources["Storyboard1"] as Storyboard;
if(myStoryboard != null)
{
myStoryboard.Completed += (s,e) =>
{
NavigationService.Navigate(new Uri("/NextPage.xaml", UriKind.Relative));
};
myStoryboard.Begin();
}
您可以处理情节提要的
已完成
事件
Storyboard myStoryboard = Resources["Storyboard1"] as Storyboard;
if(myStoryboard != null)
{
myStoryboard.Completed += (s,e) =>
{
NavigationService.Navigate(new Uri("/NextPage.xaml", UriKind.Relative));
};
myStoryboard.Begin();
}
这是解决问题的方法,但我想如果没有帮助的话,你需要分享更多关于这个问题的信息
<Storyboard x:Name="StoryboardTest" Completed="Storyboard_Completed">
//What ever animation you want to do
</Storyboard>
有关启动屏幕动画的演示,请转到此链接
并相应地应用动画。以下是解决方案,但如果这没有帮助,我想你需要分享更多关于这个问题的信息
<Storyboard x:Name="StoryboardTest" Completed="Storyboard_Completed">
//What ever animation you want to do
</Storyboard>
有关启动屏幕动画的演示,请转到此链接
并相应地应用动画。为什么在问题上添加wpf标记?wpf支持xaml。所以我补充说,不,WPF不是XAML。在Windows Phone上有Silverlight的子集,但没有WPF。因此,这意味着有时您将无法在Windows Phone上编译WPF代码。你真的需要useles的答案吗?为什么要在你的问题上添加wpf标签?wpf支持的xaml。所以我补充说,不,WPF不是XAML。在Windows Phone上有Silverlight的子集,但没有WPF。因此,这意味着有时您将无法在Windows Phone上编译WPF代码。你真的需要useles的答案吗?我的动画是5秒。只有在动画完成后,它才能导航到下一个屏幕。我不需要导航。你能再解释一下吗?我想我能想出一个解决办法。如果你有任何代码片段,请分享:)上面的动画是弹跳效果。它链接到一个称为“弧”的对象。因此,这个物体在屏幕上反弹5秒。动画完成后,页面应立即导航到下一个屏幕。这就是全部。谢谢你。我想导航服务会负责导航到下一个屏幕:)我的动画是5秒。只有在动画完成后,它才能导航到下一个屏幕。我不需要导航。你能再解释一下吗?我想我能想出一个解决办法。如果你有任何代码片段,请分享:)上面的动画是弹跳效果。它链接到一个称为“弧”的对象。因此,这个物体在屏幕上反弹5秒。动画完成后,页面应立即导航到下一个屏幕。这就是全部。谢谢。我想导航服务会负责导航到下一个屏幕:)对不起。这是行不通的。在完成以上5秒的动画后,它应该会自动导航到下一页。你能告诉我你是如何调用动画的吗?
Completed
事件应在动画完成后触发。请立即检查修改的代码。在名为“arc”的xaml文件中调用。在故事板上的哪里调用Begin
?整个动画在xaml中完成。是0秒的起点。对不起。这是行不通的。在完成以上5秒的动画后,它应该会自动导航到下一页。你能告诉我你是如何调用动画的吗?Completed
事件应在动画完成后触发。请立即检查修改的代码。在名为“arc”的xaml文件中调用。在故事板上的哪里调用Begin
?整个动画在xaml中完成。是0秒的起点。