private void Dispose() { Element2.Reset(); Element0.Reset(); Element1.Reset(); if (_surface != null) { _surface.Children.Remove(_mediaPlayerElement); _surface = null; } if (_fileStream != null) { if (_compactLifetime == null) { _fileStream.Dispose(); } _fileStream = null; } if (_mediaPlayer != null) { _mediaPlayer.VolumeChanged -= OnVolumeChanged; _mediaPlayer.SourceChanged -= OnSourceChanged; _mediaPlayer.MediaOpened -= OnMediaOpened; _mediaPlayer.PlaybackSession.PlaybackStateChanged -= OnPlaybackStateChanged; _mediaPlayerElement.SetMediaPlayer(null); //_mediaPlayerElement.AreTransportControlsEnabled = false; //_mediaPlayerElement.TransportControls = null; //_mediaPlayerElement = null; if (_compactLifetime == null) { _mediaPlayer.Dispose(); } _mediaPlayer = null; OnSourceChanged(); } if (_request != null) { _request.RequestRelease(); _request = null; } }
private void Dispose() { if (_mediaPlayer != null) { _mediaPlayer.Source = null; //_mediaPlayer.Dispose(); _mediaPlayer = null; } if (_fileStream != null) { _fileStream.Dispose(); _fileStream = null; } }
private void OnReleased(object sender, EventArgs e) { _aggregator.Unsubscribe(this); if (_mediaPlayer != null) { _mediaPlayer.Source = null; //_mediaPlayer.Dispose(); _mediaPlayer = null; } if (_fileStream != null) { _fileStream.Dispose(); _fileStream = null; } }