Silverlight:暂停动画

本文关键字:动画 暂停 Silverlight | 更新日期: 2023-09-27 18:27:50

我有一个支持某些动画的控件。

我无法接触到它的内部结构。

如何每隔200毫秒获取此动画的屏幕截图?


我试过这个代码:

    var timer = new Timer(state =>
            {
                this.root.Dispatcher.BeginInvoke(() =>
                    {
                            var bitmap = new WriteableBitmap(this.root, new TranslateTransform());
                            SaveImageSomewhere(bitmap, "picture_" + (i++) + ".png");
                    });
            }, null, 0, 200);

但它不会以200ms的间隔启动屏幕截图操作,因为捕获在UI线程中调用。

是否有可能停止(冻结)动画以进行某些控制?

Silverlight:暂停动画

我建议下载Silverlight Spy,并使用它来查看控件以及它是如何制作动画的。如果它正在使用情节提要,那么您将能够导航控制树以到达情节提要,并且您可以在上面调用Pause方法。

另一种选择是在C#获胜表单或WPF应用程序中的浏览器控件中托管UI,并使用它来捕获屏幕截图(或下载预构建的屏幕截图)。