public EditScheduledScanForm() { InitializeComponent(); var addPeriodTooltip = new ToolTip(); addPeriodTooltip.SetToolTip(btnAddPeriod, "Додати період"); var deletePeriodTooltip = new ToolTip(); deletePeriodTooltip.SetToolTip(btnDeletePeriod, "Видалити період"); Load += (sender, args) => { if (!IsEdit) { Scan = new ScheduledScan(); Text = TITLE_CREATE; Icon = Resources.Add; } else { Text = TITLE_EDIT; txtTitle.Text = Scan.Title; UpdatePeriods(); } }; }
/// <summary> /// Возвращает полную информацию о периодическом опросе /// </summary> public static string Info(this ScheduledScan scan) { string periods = scan.Periods.FirstOrDefault()?.Period.ToString(@"hh\:mm") + "\n"; scan.Periods.Skip(1).ToList().ForEach(p => { periods = periods + $"\t\t{p.Period.ToString(@"hh\:mm")}\n"; }); return($"Id:\t\t{scan.Id}\n" + $"Назва:\t\t{scan.Title}\n" + $"Періоди:\t{periods}" + $"Створено:\t{scan.DateCreated.ToString("dd.MM.yyyy HH:mm")}\n" + $"Змінено:\t{scan.DateModified.ToString("dd.MM.yyyy HH:mm")}"); }
/// <summary> /// Возвращает текст для элемента дерева опросов /// </summary> public static string NodeTitle(this ScanBase scan) { PeriodicScan periodic = scan as PeriodicScan; if (periodic != null) { string type = periodic.PeriodType ? "год." : "хв."; return($"{periodic.Title} ({periodic.Period} {type})"); } ScheduledScan scheduled = scan as ScheduledScan; if (scheduled != null) { string period = scheduled.Periods.Any() ? $"({scheduled.Periods.FirstOrDefault()?.Period.ToString(@"hh\:mm")})" : ""; return($"{scheduled.Title} {period}"); } return(string.Empty); }