コード例 #1
0
        public WorkoutMeasurementsViewModel(Window window, WorkoutResultItem workoutResultItem) : base(window)
        {
            mWindow             = window;
            WindowMinimumHeight = 350;
            WindowMinimumWidth  = 600;
            Title = $"Save Workout Plan Results:";

            WorkoutResultItem = workoutResultItem;

            BodyPartItems = Enum.GetValues(typeof(BodyPart)).Cast <BodyPart>()
                            .Select(x => new BodyPartItem()
            {
                BodyPartName = x.ToString(),
                BodyPart     = x
            }).ToList().ToObservableCollection();

            foreach (var workoutMeasurement in WorkoutResultItem.WorkoutMeasurements)
            {
                BodyPartItems.Remove(BodyPartItems.First(x => x.BodyPart == workoutMeasurement.BodyPart));
            }

            SelectedBodyPartItem = BodyPartItems.FirstOrDefault();

            AddMeasurementCommand    = new RelayCommand((p) => AddMeasurement());
            RemoveMeasurementCommand = new RelayParameterizedCommand(RemoveMeasurement);
        }
コード例 #2
0
        public void AddMeasurement(object sender)
        {
            var dialog = new WorkoutMeasurements();

            dialog.Closing += (s, e) =>
            {
                if (dialog.DataContext is WorkoutMeasurementsViewModel vm)
                {
                    WorkoutResultItem = vm.WorkoutResultItem;
                }
            };

            dialog.ShowDialogWindow(new WorkoutMeasurementsViewModel(dialog, WorkoutResultItem), mWindow);;
        }
コード例 #3
0
        public WorkoutResultInputViewModel(Window window, WorkoutResultItem workoutResultItem = null) : base(window)
        {
            mWindow             = window;
            WindowMinimumHeight = 550;
            WindowMinimumWidth  = 700;
            Title = $"Save Workout Plan Results";

            WorkoutResultItem = workoutResultItem;

            CloseCommand = new RelayCommand(p =>
            {
                SaveResult();

                mWindow.Close();
            });

            AddMeasurementCommand    = new RelayParameterizedCommand(AddMeasurement);
            RemoveMeasurementCommand = new RelayParameterizedCommand(RemoveMeasurement);

            SaveResult();
        }