public static SubTaskView ConvertTo(SubTask iObj, Group iGroup) { if (iObj == null) { return(null); } var newView = new SubTaskView(); newView.Object = iObj; //Developper if (iObj.DevelopperGUID != null) { newView.Developper = iGroup.GetUserById((Guid)iObj.DevelopperGUID).DisplayName; } //projet if (iObj.ProjectGUID != null) { var theProjectDetails = iGroup.GetProjectFromGUID((Guid)iObj.ProjectGUID); if (theProjectDetails == null) { newView.DWProject = "!!! Le projet a été supprimé !!!"; } else { newView.DWProject = theProjectDetails.Name; } } //Designation newView.Designation = iObj.Designation; //Progression var imageWidth = (int)typeof(SubTaskView).GetWidthColumn(Library.Tools.Misc.PropertyObserver.GetPropertyName <SubTaskView>(x => x.Progression)); newView.Progression = Library.Control.Datagridview.ImageHelper.GetProgressionBarImage(iObj.Progression, DATAGRIDVIEWROWHEIGHT, imageWidth, true); //Duration if (iObj.Duration > Consts.Consts.WORKINGHOURSADAY) { newView.Duration = Math.Round((decimal)((decimal)iObj.Duration / (decimal)Consts.Consts.WORKINGHOURSADAY), 1) + " j"; } else { newView.Duration = iObj.Duration + " h"; } return(newView); }
private void LoadDataGridViewSubTask(long?iSelectedSubTaskId = null) { var firstDisplayIndex = dgvSubTasks.FirstDisplayedScrollingRowIndex; var subTaskList = (_MainTask != null) ? _MainTask.SubTasks : null; if (subTaskList.IsNotNullAndNotEmpty()) { var list = subTaskList.Enum().OrderByDescending(x => x.MainTaskId).Select(x => SubTaskView.ConvertTo(x, _Group)).ToList(); _SubTaskBindingSource.DataSource = list; dgvSubTasks.Refresh(); } else { _SubTaskBindingSource.Clear(); } dgvSubTasks.SetFirstDisplayedScrollingRowIndex(firstDisplayIndex); lblMessage.Text = "{0} sous tâche(s)".FormatString(subTaskList.Enum().Count()); if (dgvSubTasks.RowCount != 0) { if (iSelectedSubTaskId != null) { dgvSubTasks.Refresh(); dgvSubTasks.SelectRowByPropertyValue <SubTaskView>(x => x.Object.SubTaskId.ToString(), iSelectedSubTaskId.ToString()); } var selectedTransaction = GetSelectedSubTask(); if (selectedTransaction != null) { SubTaskSelectionChanged(selectedTransaction); } else { SubTaskSelectionChanged(null); } } else { NothingSelected(null, null); } CommandEnableManagement(); }