c# windows窗体应用清除图表和重新加载错误。

问题描述 投票:-1回答:1

我有一个c# windows窗体应用程序,在我的windows窗体中有2个图表,我也有一个组合框和两个按钮等。我想要的是根据combobox的文本,当我按下启动按钮时,加载不同的图形。因此,在按钮启动事件,根据combobox的值,我调用一个不同的函数,每次加载我想要的图表。第二个按钮,停止按钮有下面的代码,以清除图表。

        chart1.Series.Clear();
        chart2.Series.Clear();

有时,我的代码运行正常,但有时它会抛出错误 "在'SeriesCollection'中已经存在一个名称为'kwh_price'的图表元素"。我加载图表的代码是:"我是不是做错了什么?

        string[] seriesArray = { "kwh_price", "p_cost" };
        for (int i = 0; i < seriesArray.Length; i++)
        {
            this.chart1.Series.Add(seriesArray[i]);
            this.chart1.Series[seriesArray[i]].BorderWidth = 7;
        }

我是不是做错了什么 我是不是需要更多的东西来清除图表?我不明白为什么有时运行正常,有时却不正常。

c# charts reload
1个回答
1
投票

把清除代码放在加载代码之前。这样你就可以确保在添加新的数据之前,数据已经被清除了。

chart1.Series.Clear();
chart2.Series.Clear();

string[] seriesArray = { "kwh_price", "p_cost" };
        for (int i = 0; i < seriesArray.Length; i++)
        {
            this.chart1.Series.Add(seriesArray[i]);
            this.chart1.Series[seriesArray[i]].BorderWidth = 7;
        }
© www.soinside.com 2019 - 2024. All rights reserved.