private void SetupAllTask() { HelperClasses.clTask curStTask; int curInd = -1; foreach (var task in ucGantt1.gantt1.Tasks) { curStTask = new HelperClasses.clTask(); if (InstHelperPLM.FindStOnKeyGantt(task.Key, ref curStTask, ref curInd) == false) continue; // Вывод ФИО ответственного исполнителя в ganttDataGrid1 if (curStTask.ResponsibleUser != null) { // Добавление ответственных в лист значений колонки и сортировка этого листа GanttDataColumn colRespons = ucGantt1.ganttDataGrid1.TaskColumns.ColumnByKey("Responsible"); bool exists = colRespons.ValueList.Exists(element => (User)element.Value == curStTask.ResponsibleUser); if (!exists) { colRespons.AddValueListItem(curStTask.ResponsibleExecutive, curStTask.ResponsibleUser); colRespons.ValueList.Sort((x, y) => x.Text.CompareTo(y.Text)); } // Установка ответственного исполнителя задачи // curStTask.Obj["TaskName"].ToString() task.SetProperty("Responsible", curStTask.ResponsibleUser); task.SetProperty("ResponsibleName", curStTask.ResponsibleExecutive); } // Добавление ресурсов к задаче foreach (var res in curStTask.lResourceTask) { task.AddResource(res.Res, res.unit, res.responsible); } task.PercentDone = Convert.ToDouble(curStTask.Dates.Percentage) / 100.0; // Задание цвета задачи if (curStTask.externalTask) // Для задач вне проекта { // Задачи вне проекта будут Readonly task.Readonly = true; // Назначение характеристики отображения в DataGrid task.DataGridRowBackgroundStyle = new GlossyBackgroundStyle(); task.DataGridRowBackgroundStyle.Color = Color.LightGray; task.DataGridRowBackgroundStyle.GradientBlendStyle = GradientBlendStyle.None; task.DataGridRowBackgroundStyle.GlossColor = Color.LightGray; // Назначение характеристики отображения в DataGrid task.RowBackgroundStyle = new GlossyBackgroundStyle(); task.RowBackgroundStyle.Color = Color.LightGray; task.RowBackgroundStyle.GradientBlendStyle = GradientBlendStyle.None; task.RowBackgroundStyle.GlossColor = Color.LightGray; // Задание цвета контура задачи(по умолчанию Blue task.FormatStyle.BorderStyle.Color = Color.Gray; // Задание цвета строки с название задачи и ресурсом (по умочанию Black) task.FormatStyle.ForegroundStyle.Color = Color.Black; // Задание цвета задачи task.FormatStyle.BackgroundStyle.Color = Color.LightGray; // Задание цвета эффекта (по умолчанию Blue) task.FormatStyle.BackgroundStyle.ColorEffect = Color.LightGray; // Задание стиля блеска (по умолчания None) task.FormatStyle.BackgroundStyle.GradientBlendStyle = GradientBlendStyle.None; // Задание цвета блеска - "объема" (по умолчанию White) task.FormatStyle.BackgroundStyle.GlossColor = Color.LightGray; task.SetProperty("Note", "1"); } else // Для задач входящих в проект { Color myColor = Color.FromArgb(100, Color.LightSteelBlue); // Задание цвета контура задачи(по умолчанию Blue task.FormatStyle.BorderStyle.Color = Color.Black; task.FormatStyle.BackgroundStyle.Color = myColor; // Задание цвета эффекта (по умолчанию Blue) task.FormatStyle.BackgroundStyle.ColorEffect = myColor; // Задание стиля блеска (по умолчания None) task.FormatStyle.BackgroundStyle.GradientBlendStyle = GradientBlendStyle.None; // Задание цвета блеска - "объема" (по умолчанию White) task.FormatStyle.BackgroundStyle.GlossColor = myColor; } if (curStTask.Dates.bData == false) // Примечание - дата не задана task.SetProperty("Note", "2"); } }
private void gantt1_ItemClick(object sender, GanttItemMouseEventArgs e) { if (KeyCTRL == true) { HelperClasses.clTask value = new HelperClasses.clTask(); if (InstHelperPLM.DictTasksGetVal(e.Item.Key, out value) == true) { // Выбор объекта в дереве PLM Service.UI.SelectObjectInBrowser(value.Obj); } KeyCTRL = false; } }