c# - 如何将存储在隔离存储中的图像用于 Storyboard 动画?

标签 c# silverlight windows-phone-7

我似乎无法让我存储在独立存储中的图像出现在我的 Storyboard中,我可以在用相机拍照时将图像输出到屏幕上,但是当我使用相同的文件名时 Value = String.Format("MyImage{0:D2}.jpg", i) 作为我存储它们的位置,如果我在 Storyboard 中再次打开独立存储,它似乎不起作用。我用的是蜡烛动画教程here但这些图像位于静态保存的文件夹中。谁能帮忙,我将不胜感激。

编辑 我可以从独立存储中打开一个图像,但它是出现的最后一个图像,我什至不知道它是否正在运行动画,因为它只有一个图像,有人可以帮忙吗? 代码在下面的第二篇文章中

private void PlayButton_Click(object sender, RoutedEventArgs e)
    {


        AnimationPanel.Visibility = Visibility.Visible;
        storyboard = new Storyboard
        {
            RepeatBehavior = RepeatBehavior.Forever
        };

        var animation = new ObjectAnimationUsingKeyFrames();

        Storyboard.SetTarget(animation, CandleImage);
        Storyboard.SetTargetProperty(animation, new PropertyPath("Source"));

        storyboard.Children.Add(animation);

        for (int i = 0; i <= savedCounter; i++)
        {
            var keyframe = new DiscreteObjectKeyFrame
            {
                KeyTime = KeyTime.FromTimeSpan(TimeSpan.FromMilliseconds(50 * i)),
                Value = String.Format("MyImage{0:D2}.jpg", i)//images from isolated storage
            };

            animation.KeyFrames.Add(keyframe);
        }

        Resources.Add("CandleStoryboard", storyboard);

        storyboard.Begin();
    }


}

编辑 我可以从独立存储中打开一个图像,但它是出现的最后一个图像,我什至不知道它是否正在运行动画,因为它只有一个图像,有人可以帮忙吗?谢谢

这是我使用的代码

for (int i = 0; i < savedCounter; i++)
            {
                try
                {

                    image.SetSource(isStore.OpenFile("MyImage"+i+".jpg", FileMode.Open));//images from isolated storage

                }
                catch (Exception)
                {

                    //throw;
                }


                var keyframe = new DiscreteObjectKeyFrame
                {

                    KeyTime = KeyTime.FromTimeSpan(TimeSpan.FromMilliseconds(50 * i)),
                    Value = image

                };

                animation.KeyFrames.Add(keyframe);
            }

            Resources.Add("CandleStoryboard", storyboard);

            storyboard.Begin();
        }
        else
        {
            storyboard.Stop();
        }
    }

最佳答案

使用 IsolatedStorageFileStream 从 isolatedstorage 读取图像,然后在 Storyboard中使用它。

关于c# - 如何将存储在隔离存储中的图像用于 Storyboard 动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9923067/

相关文章:

c# - 使用相机将照片拍摄为完美的正方形?

windows-phone-7 - 从 Windows Phone 7.1/7.5 应用程序中检测和启动外部应用程序

c# - RestClient 应该是单例还是为每个请求创建新实例

c# - 是否有任何 C# 或 C++ 框架可以帮助录制桌面应用程序的视频?

java - C#中的 `readonly`是否也和Java中的 `final`一样区分值类型和引用类型的变量?

c# - TimeZoneInfo 是否考虑 DST?

silverlight - 模板化形式的 MVVM 模式

html - Silverlight、xhtml 和 100% 高度

silverlight - 失去焦点后保持 Silverlight Combobox DropDown 打开

.net - 无法为 ContentControl 背景颜色设置动画,但可以与前景一起使用