如何将存储在独立存储中的图像用于故事板动画?

我似乎无法将我存储在隔离存储器中的图像显示在我的故事板中,我可以在用相机拍照时将图像输出到屏幕上但是当我使用相同的文件名时Value = String.Format("MyImage{0:D2}.jpg", i)我存储它们的地方似乎不起作用我应该在故事板中再次打开隔离存储。 我在这里使用蜡烛动画教程,但这些图像位于静态保存的文件夹中。 任何人都可以帮助我非常感谢。

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

 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中使用它。

嗨尝试以下代码,

MainPage.xaml中:

       

MainPage.xaml.cs中:

 private void btnSave_Click(object sender, RoutedEventArgs e) { SaveStringObject(); SaveCompositeObject(); } private void btnGet_Click(object sender, RoutedEventArgs e) { if(settings.Contains("myemail")) { //Retrieve email Data var location = settings["myemail"].ToString(); settings["email"] = "support@windowsphonnegeek.com"; } //Retrieve City Data City City1; settings.TryGetValue("city", out City1); this.DataContext = City1; } public void SaveStringObject() { var settings = IsolatedStorageSettings.ApplicationSettings; settings.Add("myemail", "support@windowsphonnegeek.com"); } public void SaveCompositeObject() { var settings = IsolatedStorageSettings.ApplicationSettings; City city = new City { Name = "London", Flag = "UK.png" }; settings.Add("city", city); } public class City { public string Name { get; set; } public string Flag { get; set; } } 

您可以从隔离存储中保存和获取图像。 现在,您可以使用故事板将其用于动画。

在上面的编辑中,我不得不在循环中移动一个BitmapImage,因为它每次都需要一个新实例,需要一段时间才能找到,但现在正在工作。