0
for (int i = 0; i < intarr.Length; i++)
{
    Series series = this.chart1.Series.Add(strarr[i]);

    series.Points.Add(intarr[i]);
    series.XValueType = ChartValueType.Int32;
}

这是我的代码,我有

chart1.Series.Clear();

在我正在调用的函数的顶部。第一次打,还好。但是我第二次收到此错误

A chart element with the name 'NSW' already exists in the 'SeriesCollection'.

在这条线上

Series series = this.chart1.Series.Add(strarr[i]);

谢谢

4

2 回答 2

0

好吧,当您尝试添加名称已存在于系列集合中的系列时,就会发生此错误!图表的系列名称应该是唯一的

可能 strarr 的值不是唯一的它包含相同值的多个实例。

那么如何预防呢?按照下面的代码:-)

chart1.Series.Clear();
        for (int i = 0; i < intarr.Length; i++)
        {
            if (chart1.Series.FindByName(strarr[i])== null)
            {
                Series series = this.chart1.Series.Add(strarr[i]);
                series.Points.Add(intarr[i]);
                series.XValueType = ChartValueType.Int32;
            }
        }

我建议您也更改场景,如果您需要进一步的帮助,请评论我。

于 2013-11-12T07:31:07.150 回答
0

显然strarr有两个名为“NSW”的元素。您要么必须捕获异常(我假设它会引发异常),要么检查是否还没有具有该类型的元素。

于 2013-11-12T00:17:38.410 回答