gpt4 book ai didi

wpf - 重新启动 WPF Storyboard

转载 作者:行者123 更新时间:2023-12-04 06:51:26 27 4
gpt4 key购买 nike

从 .net 代码停止和重新启动 Storyboard的正确方法是什么?

我想 ...

myStory.Stop(this);

期望随后调用 .Begin(this);将从零开始从时间线重新开始,但 Storyboard会从停止的地方重新开始。

我试过了
.Remove(this);

我试过
.Seek(TimeSpan.Zero); 

这也不起作用。

更多细节......这是我的 Storyboard示例。
<Storyboard x:Key="overlay">
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="textone" Storyboard.TargetProperty="(UIElement.Opacity)">
<SplineDoubleKeyFrame KeyTime="00:00:03.0" Value="0"/>
<SplineDoubleKeyFrame KeyTime="00:00:03.0" Value="1"/>
<SplineDoubleKeyFrame KeyTime="00:00:06.0" Value="1"/>
<SplineDoubleKeyFrame KeyTime="00:00:06.0" Value="0"/>
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="texttwo" Storyboard.TargetProperty="(UIElement.Opacity)">
<SplineDoubleKeyFrame KeyTime="00:00:07.0" Value="0"/>
<SplineDoubleKeyFrame KeyTime="00:00:07.0" Value="1"/>
<SplineDoubleKeyFrame KeyTime="00:00:10.0" Value="1"/>
<SplineDoubleKeyFrame KeyTime="00:00:10.0" Value="0"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>

因此 textone 中的文本运行,如果您关闭屏幕并快速返回屏幕,则 texttwo 实际上会在新启动的 Storyboard中播放。所以原始的(从第一个屏幕开始) Storyboard仍在播放,即使我已经删除并停止了它。

最佳答案

使用 Storyboard.Seek(TimeSpan.Zero) 怎么样?类似于在 Stream 中寻找,这应该会让您回到动画的开头。

我评论说您还应该确保将 IsControllable 属性设置为 true。记在脑子里!

Storyboard.Seek method

关于wpf - 重新启动 WPF Storyboard,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/832448/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com