Я снова застрял.
Я создаю проект WPF на C # ...
У меня есть изображение (обложка альбома), которое я буду менять в коде, и хочу сделать следующее:
Когда будет определено и получено изображение обложки нового альбома, я хочу, чтобы текущее изображение в элементе управления изображением исчезло, обновилось с новой обложкой, а затем снова появилось.
Я не вижу много хороших примеров того, как это сделать в коде.
Следующее было моей последней неудачной попыткой ...
if (currentTrack != previousTrack)
{
BitmapImage image = new BitmapImage();
image.BeginInit();
image.CacheOption = BitmapCacheOption.OnLoad;
image.CreateOptions = BitmapCreateOptions.IgnoreImageCache;
image.UriSource = new Uri(Address, UriKind.Absolute);
image.EndInit();
Storyboard MyStoryboard = new Storyboard();
DoubleAnimation FadeOut = new DoubleAnimation();
FadeOut.From = 1.0;
FadeOut.To = 0.0;
FadeOut.Duration = new Duration(TimeSpan.FromSeconds(.5));
MyStoryboard.Children.Add(FadeOut);
Storyboard.SetTargetName(FadeOut, CoverArt.Name);
Storyboard.SetTargetProperty(FadeOut, new PropertyPath(Rectangle.OpacityProperty));
CoverArt.Source = image;
DoubleAnimation Fadein = new DoubleAnimation();
Fadein.From = 0.0;
Fadein.To = 1.0;
Fadein.Duration = new Duration(TimeSpan.FromSeconds(.5));
MyStoryboard.Children.Add(Fadein);
Storyboard.SetTargetName(Fadein, CoverArt.Name);
Storyboard.SetTargetProperty(Fadein, new PropertyPath(Rectangle.OpacityProperty));
MyStoryboard.Begin(this);
}
Я бы предпочел сделать это в коде просто потому, что именно здесь я получаю изображение. В противном случае, я не уверен, как бы это вызвать.
Пример был бы очень признателен.