private void button7_Click(object sender, EventArgs e) { int i = lbPTZSchedule.SelectedIndex; if (i > -1) { var s = CameraControl.Camobject.ptzschedule.entries.ToList().OrderBy(p => p.time).ToList(); var si = s[i]; var cr = new ConfigureRepeat { Interval = 60, Until = si.time }; if (cr.ShowDialog(this) == DialogResult.OK) { var dtUntil = cr.Until; var dtCurrent = si.time.AddSeconds(cr.Interval); while (dtCurrent.TimeOfDay < dtUntil.TimeOfDay) { s.Add(new objectsCameraPtzscheduleEntry { command = si.command, time = dtCurrent }); dtCurrent = dtCurrent.AddSeconds(cr.Interval); } } cr.Dispose(); CameraControl.Camobject.ptzschedule.entries = s.ToArray(); ShowPTZSchedule(); } else { MessageBox.Show(this, LocRm.GetString("SelectPTZRepeat")); } }