/// <summary>
 ///     Handles the Click event of the PlayButton control.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">The <see cref="RoutedEventArgs" /> instance containing the event data.</param>
 private void PlayButton_Click([NotNull] object sender, [NotNull] RoutedEventArgs e)
 {
     this.RecorderState = PlayerState.Play;
     this._wavMss = new WaveMediaStreamSource(this._theMemStream);
     this.RecordingOutput.SetSource(this._wavMss);
     this.RecordingOutput.Position = TimeSpan.Zero;
     this.RecordingOutput.Play();
     this.UpdateRecordingState(this.RecorderState);
 }
 /// <summary>
 /// Handles the Click event of the PlayButton control.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">The <see cref="RoutedEventArgs"/> instance containing the event data.</param>
 private void PlayButton_Click(object sender, RoutedEventArgs e)
 {
     RecorderState = PlayerState.Play;
     _wavMss = new WaveMediaStreamSource(_theMemStream);
     this.PlayButton.IsEnabled = false;
     this.StopButton.IsEnabled = true;
     this.SaveButton.IsEnabled = true;
     this.RecordButton.IsEnabled = false;
     this.AudioRecorder.SetSource(_wavMss);
     this.AudioRecorder.Position = TimeSpan.Zero;
     this.AudioRecorder.Play();
 }