/// <summary>
 /// When the player resumes, start the timer and notify the UI.
 /// </summary>
 void player_Resume(object sender, EventArgs e)
 {
     timerSession.Start();
     Application.Current.Dispatcher.Invoke(() => DisplayPlayTime?.Invoke(this, new EventArgs()));
 }
 /// <summary>
 /// When the play timer is updated, notify the UI.
 /// </summary>
 void sessionTimer_Tick(object sender, EventArgs e)
 {
     sessionTotalSeconds++;
     Application.Current.Dispatcher.Invoke(() => DisplayPlayTime?.Invoke(this, new EventArgs()));
 }
 /// <summary>
 /// When the player stops, stop the timer and notify the UI.
 /// </summary>
 void player_Pause(object sender, EventArgs e)
 {
     timerSession.Stop();
     Application.Current?.Dispatcher?.Invoke(() => DisplayPlayTime?.Invoke(this, new EventArgs()));
 }