public void DrawingLineList() { if (this.LineServicesData != null) { foreach (LineService info in this.LineServicesData) { if (info.LineServicesData == null) { continue; } double num2 = 18; double num3 = Convert.ToDouble(18) / Convert.ToDouble(10); for (int i = 0; i < info.LineServicesData.Count; i++) { info.LineServicesData[i].PointX = num2 * ((info.LineServicesData[i].PointXDate.TimeOfDay.TotalMinutes - GanttColumnsItem[0].TimeName.TimeOfDay.TotalMinutes) / 5); if (info.ChartLineType == ChartLineType.Number) { info.LineServicesData[i].ScreenPointY = info.TopItemIndex * 18; } else if (info.ChartLineType == ChartLineType.Description) { info.LineServicesData[i].ScreenPointY = 18 + info.TopItemIndex * 18; } else { info.LineServicesData[i].ScreenPointY = BorderChart.Height - (info.LineServicesData[i].PointY * num3); } } } foreach (LineService curve in this.LineServicesData) { if (curve.LineServicesData == null) { continue; } Point[] array = new Point[curve.LineServicesData.Count]; for (int i = 0; i < curve.LineServicesData.Count; i++) { array[i] = new Point(curve.LineServicesData[i].PointX, curve.LineServicesData[i].ScreenPointY); } if ((curve.ChartLineType == ChartLineType.BezierType) || (curve.ChartLineType == ChartLineType.BezierKnotsType)) { Point[] pointArray2; Point[] pointArray3; BezierSpline.GetCurveControlPoints(array, out pointArray2, out pointArray3); this.DrawBezierChartData(curve.LineLegendItem.Color, array, pointArray2, pointArray3); if (curve.ChartLineType == ChartLineType.BezierKnotsType) { } } else if ((curve.ChartLineType == ChartLineType.PolylineType) || (curve.ChartLineType == ChartLineType.PolylineKnotsType)) { this.DrawPolylineChartData(array, curve); if (curve.ChartLineType == ChartLineType.PolylineKnotsType) { DrawPolylineKnotsChartData(array, curve); } } else if (curve.ChartLineType == ChartLineType.Knots) { DrawKnotsChartData(curve.LineLegendItem.Color, array, curve.LineLegendItem.TitleIcon); } else if (curve.ChartLineType == ChartLineType.Number) { ObservableCollection <int> dataList = new ObservableCollection <int>(); foreach (var item in curve.LineServicesData) { dataList.Add(item.DataValue); } DrawNumberChartData(curve.LineLegendTopItem.Color, array, dataList); } else if (curve.ChartLineType == ChartLineType.Description) { if (curve.LineServicesData.Count > 0) { DrawDescriptionChartData(curve.LineLegendTopItem.Color, array, curve.LineServicesData[0].InfoDescription); } } } } }