/// <summary> /// /// </summary> public void Draw(ZedGraph.GraphPane pane, object dataSource) { if (this.GraphPaneConfig == null) { return; } if (this.DataSource == null) { return; } this.GraphPaneConfig.ConfigGraphPane(pane); foreach (CurveConfigBase cfg in this.GraphPaneConfig.CurveConfigBaseCollection) { CurveDataCollection cds = cfg.Create(dataSource); foreach (CurveData cd in cds) { switch (this.GraphPaneConfig.CurItemType) { case CurveItemType.Line: if (this.GraphPaneConfig.XAxisType == ZedGraph.AxisType.Date) { ZedGraph.LineItem curve = pane.AddCurve(cd.Name, cd.PointList, cd.Color); curve.Symbol.Fill = new ZedGraph.Fill(Color.White); } else if (this.GraphPaneConfig.XAxisType == ZedGraph.AxisType.Text) { LineItem curve = pane.AddCurve(cd.Name, null, cd.YValues, cd.Color); pane.XAxis.Scale.TextLabels = cd.XAxisLabels; curve.Symbol.Fill = new Fill(Color.White); } break; case CurveItemType.Bar: pane.AddBar(cd.Name, null, cd.YValues, cd.Color); pane.XAxis.Scale.TextLabels = cd.XAxisLabels; break; case CurveItemType.Pie: pane.AddPieSlices(cd.YValues, cd.XAxisLabels); break; } } } }