void Instance_PlayStateChanged(object sender, EventArgs e) { if (BackgroundAudioPlayer.Instance.Track != null) { var track = BackgroundAudioPlayer.Instance.Track; if (PivotIndex == 0) { var _a = CurrentTracks.FirstOrDefault(a => a.Track.Audio.Preview.Contains(track.Source.ToString())); foreach (var obsTrack in CurrentTracks) { obsTrack.IsPlay = false; if (_a != null && obsTrack.Track.Id == _a.Track.Id && BackgroundAudioPlayer.Instance.PlayerState != PlayState.Paused) { obsTrack.IsPlay = true; } } } else { var _a = GeneralTracks.FirstOrDefault(a => a.Track.Audio.Preview.Contains(track.Source.ToString())); foreach (var obsTrack in GeneralTracks) { obsTrack.IsPlay = false; if (_a != null && obsTrack.Track.Id == _a.Track.Id && BackgroundAudioPlayer.Instance.PlayerState != PlayState.Paused) { obsTrack.IsPlay = true; } } } } }
private void BindingGeneralTrack(IEnumerable <Track> checkin) { GeneralTracks = checkin.Select(s => new ObsTrack { IsPlay = false, Track = s }).ToList(); NoGeneralTracksVisibility = !GeneralTracks.Any(); }
private void Play(ObsTrack obj) { //List<AudioTrack> list = new List<AudioTrack>(); //if (PivotIndex == 0) //{ // list = // CurrentTracks.Select( // t => new AudioTrack(new Uri(obj.Track.Audio.Preview), obj.Track.Name, obj.Track.Artist.Name, obj.Track.Album, null)).ToList(); // AudioPlayer.currentTrackNumber= CurrentTracks.IndexOf(obj); //} //else //{ // list = // GeneralTracks.Select( // t => new AudioTrack(new Uri(obj.Track.Audio.Preview), obj.Track.Name, obj.Track.Artist.Name, obj.Track.Album, null)).ToList(); // AudioPlayer.currentTrackNumber = GeneralTracks.IndexOf(obj); //} var i = 0; var list = new List <Track>(); if (PivotIndex == 0) { list = CurrentTracks.Select( t => t.Track).ToList(); i = CurrentTracks.IndexOf(obj); } else { list = GeneralTracks.Select( t => t.Track).ToList(); i = GeneralTracks.IndexOf(obj); } using (var ifs = new IsolatedStorageFileStream("playlist.xml", FileMode.Create, IsolatedStorageFile.GetUserStoreForApplication())) { var ser = new DataContractJsonSerializer(list.GetType()); ser.WriteObject(ifs, list); } using (var ifs = new IsolatedStorageFileStream("track.xml", FileMode.Create, IsolatedStorageFile.GetUserStoreForApplication())) { var ser = new DataContractJsonSerializer(i.GetType()); ser.WriteObject(ifs, i); } //BackgroundAudioPlayer.Instance.Track = new AudioTrack(new Uri(obj.Track.Audio.Preview), obj.Track.Name, obj.Track.Artist.Name, obj.Track.Album, null); BackgroundAudioPlayer.Instance.Play(); }