public ManageScheduleWindow(MainWindow parent, WorkMode workMode, Schedule schedule = null) { _parent = parent; _workMode = workMode; if (_workMode == WorkMode.Add) { Schedule = new Schedule(true); } else { _originalSchedule = schedule; var serialized = JsonConvert.SerializeObject(schedule); //Deep copy the schedule when editing Schedule = JsonConvert.DeserializeObject <Schedule>(serialized); } DataContext = Schedule; InitializeComponent(); _dayUserControls = new List <DayUserControl>(); _dayUserControls.Add(MondayUserControl); _dayUserControls.Add(TuesdayUserControl); _dayUserControls.Add(WednesdayUserControl); _dayUserControls.Add(ThursdayUserControl); _dayUserControls.Add(FridayUserControl); _dayUserControls.Add(SaturdayUserControl); _dayUserControls.Add(SundayUserControl); SetupDayUserControls(); EventUserControl.EventTriggers = Schedule.EventTriggers; EventUserControl.BuildTriggerList(); }
public ManageScheduleWindow(MainWindow parent, WorkMode workMode, Schedule schedule = null) { _parent = parent; _workMode = workMode; if (_workMode == WorkMode.Add) { Schedule = new Schedule(true); } else { _originalSchedule = schedule; var serialized = JsonConvert.SerializeObject(schedule); //Deep copy the schedule when editing Schedule = JsonConvert.DeserializeObject <Schedule>(serialized); } DataContext = Schedule; InitializeComponent(); _dayUserControls = new List <DayUserControl>(); _dayUserControls.Add(MondayUserControl); _dayUserControls.Add(TuesdayUserControl); _dayUserControls.Add(WednesdayUserControl); _dayUserControls.Add(ThursdayUserControl); _dayUserControls.Add(FridayUserControl); _dayUserControls.Add(SaturdayUserControl); _dayUserControls.Add(SundayUserControl); SetupDayUserControls(); EventUserControl.EventTriggers = Schedule.EventTriggers; EventUserControl.BuildTriggerList(); //Set the device dropdown values DevicesDropdown.ItemsSource = UserSettings.Settings.Devices.Select(device => device.Name); DevicesDropdown.SelectedValue = Schedule.AppliedDeviceNames; }