Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在我的wpf转换动画中闪烁_Wpf_Animation_Transition_Beginanimations - Fatal编程技术网

在我的wpf转换动画中闪烁

在我的wpf转换动画中闪烁,wpf,animation,transition,beginanimations,Wpf,Animation,Transition,Beginanimations,我正在尝试实现一个自定义的过渡动画,在图像上使用shadereffect。 我正在使用一个我为图形化指定Bézier函数而设计的系统,我在一个名为spline的类中处理所有样条曲线数据 我正在设置一个时间属性的动画,该属性发送到样条线的静态方法,以计算用于缓和的贝塞尔数据。 然后,我得到发送到着色器效果的时间属性的计算值 但是我不能在这个转换中使用beginAnimation,因为播放动画的类是非UI类,并且已经从抽象类继承 如果我想使用beginAnimation,我必须让抽象类从depend

我正在尝试实现一个自定义的过渡动画,在图像上使用shadereffect。 我正在使用一个我为图形化指定Bézier函数而设计的系统,我在一个名为spline的类中处理所有样条曲线数据

我正在设置一个时间属性的动画,该属性发送到样条线的静态方法,以计算用于缓和的贝塞尔数据。 然后,我得到发送到着色器效果的时间属性的计算值 但是我不能在这个转换中使用beginAnimation,因为播放动画的类是非UI类,并且已经从抽象类继承

如果我想使用beginAnimation,我必须让抽象类从dependencyObject继承,以使用dependency属性作为beginAnimation的参数,但是我得到了这个错误

这是一个开始(时间属性,动画)


“MyClass”不包含BeginAnimation的定义,并且找不到接受类型为“MyClass”的第一个参数的扩展方法BeginAnimation(是否缺少using指令或程序集引用)

所有这些依赖性/可设置动画的系统都不适合我的需要,因为我没有直接在ui上工作,我现在完全被卡住了

有什么想法吗


(我使用了一个Dispatcher来完成这个技巧,但当动画完成时,我可以在半秒钟内看到我的应用程序的背景色,然后我的第二个图像最终显示出来,但我不希望出现这种行为,因为它将在市场上销售…

使用关键帧动画。可以向其中添加单个帧。例如,您可以每隔2个关键帧隐藏一些内容。

我最终使用了一个情节提要来实现这一点,在我的抽象类上使用依赖项对象继承

即使在非UI对象上使用Sotryboard/dependencyProperty系统不是很好(在我看来),它也可以工作

我有一个故事板,可以将MyClass中名为Time的DependencyProperty从0设置为1。 在PropertyChangedCallback of Time中,我根据自定义样条线缓和函数计算新的时间值,然后将其影响到着色器的Progress属性


无论如何,感谢您的关注。

我正在使用自己制作的工具中的贝塞尔曲线创建自定义缓和函数,在这里我可以以图形方式设计我想要的每一个缓和函数,避免用户为数学而烦恼。但在我的应用程序中,我不能使用关键帧,因为我使用了自定义类型的样条线缓和函数,wpf的样条线关键帧系统意味着第一个点为0,0,最后一个点为1,1,即使第二个动画使用离散动画关键帧对第二个图像的不透明度设置动画,以覆盖第一个图像,动画停止后,图像仍会弹出