private void ActivateSingleSound(object parameter) { if (parameter == null) { throw new ArgumentNullException(nameof(parameter)); } ISound sound = parameter as ISound; if (sound == null) { throw new ArgumentException( string.Format("Parameter must be of type {0}", typeof(ISound)), nameof(parameter)); } ISound clonedSound = sound.Clone() as ISound; _viewModel.SoundService.Add(clonedSound); _viewModel.SelectedActiveSound = clonedSound; }