Solved

Error assigning series chart area in vb.net

Posted on 2010-08-22
1
673 Views
Last Modified: 2012-05-10
Hello,
I'm developing a vb.net 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
                Else
                    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

                dset.Tables.Add(dtgv)
                For Each table As DataTable In dset.Tables
                    newtable.Merge(table)
                Next
                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
                    xval.Add(r.Item(xfield))
                Next

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

                For Each r As DataRow In ds.Rows
                    yval.Add(r.Item(yfield))
                Next

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

                series.BorderWidth = 2
                Chart1.DataBind()

            Next

Open in new window

0
Comment
Question by:chtullu135
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
1 Comment
 
LVL 17

Accepted Solution

by:
calacuccia earned 500 total points
ID: 33496916
In my opinion, ChartArea should be assign to the Chart object, not the Series object.
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This code takes an Excel list of URL’s and adds a header titled “URL List”. It then searches through all URL’s in column “A”, looking for duplicates. When a duplicate is found, it is moved to the top of the list. The duplicate URL’s are then highlig…
This article describes a serious pitfall that can happen when deleting shapes using VBA.
This Micro Tutorial will demonstrate how to use a scrolling table in Microsoft Excel using the INDEX function.
This Micro Tutorial will demonstrate how to create pivot charts out of a data set. I also added a drop-down menu which allows to choose from different categories in the data set and the chart will automatically update.

623 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question