C# 使用ZedGraph的多条曲线

C# 使用ZedGraph的多条曲线,c#,zedgraph,C#,Zedgraph,我在使用时发生了一件奇怪的事情 我使用同一项添加多条曲线。比如: ZedGraph LineItem curve_3; curve_3 = pane.AddCurve("", xx_1, yy, xxyy); 我多次调用上述行以添加多个点。但是当我删除曲线时,只有最后添加的曲线被删除,所有曲线都保留在窗格中 this.zedGraph_RenderedTrack.GraphPane.CurveList.Remove(curve_3); 我没有找到一种方法来清除所有添加的曲线。有什么办法吗 我

我在使用时发生了一件奇怪的事情

我使用同一项添加多条曲线。比如:

ZedGraph LineItem curve_3;
curve_3 = pane.AddCurve("", xx_1, yy, xxyy);
我多次调用上述行以添加多个点。但是当我删除曲线时,只有最后添加的曲线被删除,所有曲线都保留在窗格中

this.zedGraph_RenderedTrack.GraphPane.CurveList.Remove(curve_3);
我没有找到一种方法来清除所有添加的曲线。有什么办法吗


我的实际要求是,我必须在窗格上动态添加不同的线,但我不需要显示标签信息,所有这些线都应该通过单击来绘制,并通过单击来删除。

您只持有此代码中的最后一条曲线:

ZedGraph LineItem curve_3;
curve_3 = pane.AddCurve("", xx_1, yy, xxyy);
使用类似集合的列表来记住所有曲线

List<LineItem>.foreach(r => this.zedGraph_RenderedTrack.GraphPane.CurveList.Remove(r);
)
List.foreach(r=>this.zedGraph_RenderedTrack.GraphPane.CurveList.Remove(r);
)

如果要从图形窗格中删除所有曲线,只需使用
曲线列表.Clear()
方法:

this.zedGraph_RenderedTrack.GraphPane.CurveList.Clear();

事实上,我不想删除所有,但只有少数,我已经通过曲线_3添加。留下了我想要保留的所有数据,因此我们不能使用CurveList.Clear();在这种情况下,JesseJames建议的方法应该是:在一个单独的列表中收集添加的曲线,然后在列表中循环,并从
GraphPane.CurveList
中删除所有项目。