private static void StopPlayersNow(InMusicGroup musicGroup) { var playingInfo = musicGroup.PlayingInfo; if (playingInfo.State != MusicState.Stopped) { playingInfo.State = MusicState.Stopped; var playing = playingInfo.Players; for (int i = 0; i < playing.Count; i++) { if (playing[i] != null) { playing[i].Stop(); } MusicUpdater.CleanupMusicNode(musicGroup); } } for (int i = 0; i < musicGroup._children.Count; i++) { StopPlayersNow(musicGroup._children[i] as InMusicGroup); } }