Error assigning series chart area in

I'm developing a application that includes a graphing module.  I keep getting a error on line
  series.ChartArea = "Default"

The error reads
A chart element with the name of 'Default' could not be found in the chart collection'.5
All I am doing is assigning a name to that series chart area.  I've used this code previously with no problem so I am not sure what is going on.

For Each g As GraphReport In graphs

                If MatchingMetricUnits(g) = Nothing Then
                    MessageBox.Show(g.DataVersionIdOne.ToString & " and " & g.DataVersionIdTwo.ToString & " do not have corresponding units!", "Erro")
                    Exit Sub
                    strUnits = MatchingMetricUnits(g)
                End If

                Dim ds As New DataTable
                ds = ReportDB.GetDeltaSeriesData(g.DataVersionIdOne, g.DataVersionIdTwo, g.MetricName)

                Dim dtgv As New DataTable
                dtgv = ReportDB.GetDeltaReportData(g.DataVersionIdOne, g.DataVersionIdTwo, g.MetricName)

                Dim newtable As New DataTable

                For Each table As DataTable In dset.Tables
                dgvGraphResults.DataSource = newtable

                Dim strSeriesName As String = g.DataVersionIdOne.ToString & " - " & g.DataVersionIdTwo.ToString

                RemoveDuplicateSeries(Chart1.Series, strSeriesName)
                Dim series As Series = Chart1.Series.Add(strSeriesName)
                series.Tag = g.DataVersionIdOne & "-" & g.DataVersionIdTwo
                If g.GraphType = 0 Then
                    series.ChartType = SeriesChartType.Spline
                ElseIf g.GraphType = 1 Then
                    series.ChartType = SeriesChartType.Column
                ElseIf g.GraphType = 2 Then
                    series.ChartType = SeriesChartType.StackedArea
                ElseIf g.GraphType = 3 Then
                    series.ChartType = SeriesChartType.StackedColumn
                End If

                strTitleName = g.GraphTitle.ToString
                'MetricName = g.GraphTitle.ToString

                series.ChartArea = "Default"
                Dim xfield As String = "ForecastYear"
                Dim xval As New ArrayList

                For Each r As DataRow In ds.Rows

                Dim yfield As String = "MetricValue"
                Dim yval As New ArrayList

                For Each r As DataRow In ds.Rows

                ' Bind the double array to the Y axis points of the Default data series
                Chart1.Series(strSeriesName).Points.DataBindXY(xval, yval)

                series.BorderWidth = 2


Open in new window

Who is Participating?
calacucciaConnect With a Mentor Commented:
In my opinion, ChartArea should be assign to the Chart object, not the Series object.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.