private void FillListView(WorkOutRoutine workOutRoutine) { ResetControls(); int groupIndex, itemIndex; ListViewGroup group; ListViewItem item; foreach (OneDaySession session in workOutRoutine.SessionsList) { group = new ListViewGroup(session.SessionName + "(" + session.Day + ")", HorizontalAlignment.Left); ExercisesListView.Groups.Add(group); groupIndex = ExercisesListView.Groups.IndexOf(group); foreach (WorkOutExercise exercise in session.ExercisesList) { item = new ListViewItem(exercise.ExerciseName); item.SubItems.Add(exercise.BodyPart.ToString()); item.SubItems.Add(exercise.InitialReps.ToString()); item.SubItems.Add(exercise.FinalReps.ToString()); item.SubItems.Add(exercise.Sets.ToString()); item.SubItems.Add(exercise.Rest.ToLongTimeString()); ExercisesListView.Items.Add(item); itemIndex = ExercisesListView.Items.IndexOf(item); ExercisesListView.Items[itemIndex].Group = ExercisesListView.Groups[groupIndex]; } } }
public void ShowRoutine() { ResetControls(); OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.InitialDirectory = RoutineManager.routineDirectoryPath; openFileDialog.Title = "Open routine"; DialogResult dialogResult = openFileDialog.ShowDialog(); if (dialogResult == DialogResult.OK) { try { WorkOutRoutine workOutRoutine = RoutineManager.LoadWorkOutRoutine(openFileDialog.FileName); MessageBox.Show("Work out routine (" + workOutRoutine.RoutineName + ") was opened succesfully."); FillListView(workOutRoutine); workOutRoutine.UpdateRoutine(); TotalExercisesLabel.Text = "Total Exercises: " + workOutRoutine.TotalExercises; TotalSetsLabel.Text = "Total Sets: " + workOutRoutine.TotalSets; StartLabel.Text = "Start: " + workOutRoutine.Start.ToShortDateString(); if (workOutRoutine.Duration.TotalDays >= 2) { DurationLabel.Text = "Duration: " + workOutRoutine.Duration.TotalDays.ToString("F0") + " days"; } else { DurationLabel.Text = "Duration: " + workOutRoutine.Duration.TotalDays.ToString("F0") + " day"; } } catch (InvalidCastException) { MessageBox.Show("Select the proper work out routine."); } } }