/// <summary> /// 描画用コンストラクター /// </summary> /// <param name="mgrObject">ScheduleManagerオブジェクト</param> /// <param name="Graphics">Graphicsオブジェクト</param> public ScheduleDrawComponent(mgrSchedule mgrObject, Graphics g, Size imgSize) { this.CalcData(mgrObject); //描画の初期設定 Common.ApplyHighQualityDrawing(g); //背景と外枠を描画 g.FillRectangle(Brushes.White, 0, 0, imgSize.Width, imgSize.Height); g.DrawRectangle(ScheduleDrawComponent.TaskFramePen, 1, 1, imgSize.Width - 2, imgSize.Height - 2); }
/// <summary> /// 必要情報を算出します。 /// </summary> /// <param name="mgrObject">ScheduleManagerオブジェクト</param> private void CalcData(mgrSchedule mgrObject) { this.StartDate = mgrObject.GetFirstStartTaskDate(); this.EndDate = mgrObject.GetLastEndTaskDate(); //縦軸を算出 foreach (var item in mgrObject.Sections) { this.HeightCount++; foreach (var sub in item.Workers) { this.HeightCount++; } } //横軸を算出 if (mgrObject.Tasks.Count > 0) { this.WidthCount = (this.EndDate - this.StartDate).Days; } }
public DateTime EndDate; //プロジェクトの終了日 /// <summary> /// 情報取得用コンストラクター /// </summary> /// <param name="mgrObject">ScheduleManagerオブジェクト</param> public ScheduleDrawComponent(mgrSchedule mgrObject) { this.CalcData(mgrObject); }