Я делаю музыкальный плеер для Windows Phone (C#). Я решил запустить приложение с Pivot-Pages. Один из них - это список альбомов, и в левой части списка есть альбом Art. Я сделал класс со свойствами:У каждого альбома есть то же самое
BitmapImage artwork;
Album alb;
и я сделал viewmodelclass для связывания:
ObservableCollection<ViewModelHelper.AlbumHelper> albums = new ObservableCollection<ViewModelHelper.AlbumHelper>();
public ObservableCollection<ViewModelHelper.AlbumHelper> Albums
{
get { return albums; }
}
public AlbenViewModel()
{
LoadAlbums();
}
public void LoadAlbums()
{
using (MediaLibrary mediaLib = new MediaLibrary())
{
BitmapImage bmp = new BitmapImage();
foreach (Album alb in mediaLib.Albums)
{
if (alb.HasArt == true)
{
bmp.SetSource(alb.GetAlbumArt());
albums.Add(new ViewModelHelper.AlbumHelper(bmp, alb));
}
else
{
bmp.UriSource = new Uri("/Gesture-Music-Player;component/Images/noArtwork.png", UriKind.Relative);
albums.Add(new ViewModelHelper.AlbumHelper(bmp, alb));
}
}
}
}
Когда я выполнить это, Album Arts все же (что является Album Art последнего альбома в моей коллекции). Если я удаляю условие if, то, как и должно быть, все это изображение из альбома UriSource.
Я не понимаю, почему последнее изображение установлено для всех альбомов.
Thank You Сейчас она работает, как и должно быть;) – thalers