private void lbTasks_SelectedIndexChanged(object sender, EventArgs e) { stepsTree1.stepTree.Visible = false; var selectedTaskItem = (ShedulerTask)lbTasks.SelectedItem; if (selectedTaskItem == null) { this.stepsTree1.ClearTree(); return; } DateTime actualDateTime = Constants.DEFAULT_DATE_TIME; if (selectedTaskItem.NextStartTime > Constants.DEFAULT_DATE_TIME) { actualDateTime = selectedTaskItem.NextStartTime; } else if (selectedTaskItem.LastStartTime.HasValue && selectedTaskItem.LastStartTime.Value > Constants.DEFAULT_DATE_TIME) { actualDateTime = selectedTaskItem.LastStartTime.Value; } else if (selectedTaskItem.StartTime > Constants.DEFAULT_DATE_TIME) { actualDateTime = selectedTaskItem.StartTime; } this.edTaskName.Text = selectedTaskItem.Name; this.cmbTaskModes.SelectedIndex = selectedTaskItem.Mode; this.pckrStartDateTime.Value = actualDateTime.Add(_utcOffset); this.chbEnable.Checked = selectedTaskItem.Enabled ?? false; // Заполнение списка компьютеров DataGridViewRow[] rows = rgvComputersForSheduler.dataGridView.Rows.OfType <DataGridViewRow>().ToArray(); foreach (DataGridViewRow row in rows) { row.Cells["Selected"].Value = false; } foreach (DataGridViewRow row in rows) { foreach (var currentComputer in selectedTaskItem.ShedulerTasksComputersLists) { if (currentComputer.ComputerId == Convert.ToInt32(row.Cells["ComputerId"].Value)) { row.Cells["Selected"].Value = true; continue; } } } this.stepsTree1.ClearTree(); var currentTaskSteps = MQueryCommand.GetAllStepsParentChild(selectedTaskItem.Id).OrderBy(x => x.ParentId).ToList(); stepsTree1.PopulateA(currentTaskSteps); this.stepsTree1.ExpandAll(); stepsTree1.stepTree.Visible = true; }