void exerciseTableDelegate_ExerciseDeleted(object sender, int exerciseIndex)
        {
            Data.DeleteExerciseBlock(_exercises[exerciseIndex].Id);
            _exercises = Data.GetExerciseBlocks();
            ServiceManager.RestartNotificationServiceIfNeeded();

            InvokeOnMainThread(() =>
            {
                _source.EnabledDisabledSwitchSelected -= EnableDisableExercise;
                _source = new ExerciseListTableSource(_exercises);
                _source.EnabledDisabledSwitchSelected += EnableDisableExercise;
                ExerciseList.Source = _source;
                ExerciseList.ReloadData();
                ExerciseList.Delegate = _exerciseTableDelegate;
            });
        }
        public override void ViewWillAppear(bool animated)
        {
            base.ViewWillAppear(animated);
            SelectedExerciseId  = null;
            MenuButton.Clicked += MenuButton_Clicked;

            _exercises             = Data.GetExerciseBlocks();
            _exerciseTableDelegate = new ExerciseTableDelegate();
            _exerciseTableDelegate.ExerciseEdited  += exerciseTableDelegate_ExerciseEdited;
            _exerciseTableDelegate.ExerciseDeleted += exerciseTableDelegate_ExerciseDeleted;

            _source = new ExerciseListTableSource(_exercises);
            _source.EnabledDisabledSwitchSelected += EnableDisableExercise;
            ExerciseList.Source   = _source;
            ExerciseList.Delegate = _exerciseTableDelegate;
        }