• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1785
  • Last Modified:

Creating Dundas Chart at runtime - ASP.NET

I need to create a Dundas chart control from scratch at runtime.  could anyone point me to a sample or provide some simple sample code for doing so??  Thanks in Advance.

this is Dundas for ASP.NET
0
BoggyBayouBoy
Asked:
BoggyBayouBoy
1 Solution
 
VikramMullickCommented:
Attached is the link
http://www.dundas.com/Products/Chart/index.aspx
Download the evaluation version . Here you will have plenty of examples for manking dundas chart , through ASP.NET
0
 
BoggyBayouBoyAuthor Commented:
Thanks, but I already did that.   I don't see any purely run-time generated controls in the examples.  Are you referring to any particular example?
0
 
GiftsonDJohnCommented:
Hi

Try this.
                Chart schart = new Chart();
                schart.Width = Unit.Pixel(400);
                schart.Height = Unit.Pixel(300);
                schart.BackColor = Color.White;
                schart.BorderLineColor = Color.FromArgb(244, 244, 244);
                schart.BorderLineStyle = ChartDashStyle.Solid;
                schart.BorderLineWidth = 1;
                
                schart.CustomizeLegend += new CustomizeLegendEventHandler(schart_CustomizeLegend);
 
                schart.Titles.Add("Title of the Chart", Docking.Top, new Font("Trebuchet MS", 12, FontStyle.Bold), Color.FromArgb(26, 59, 105));
 
                schart.ImageStorageMode = ImageStorageMode.UseHttpHandler;
                schart.Attributes.Add("PreserveAspectRation", "true");
 
                schart.ChartAreas.Add("Default");
                schart.Series.Add("Series1");
 
                SeriesChartType sctype = SeriesChartType.Doughnut;
                schart.Series["Series1"].Type = sctype; 
 
                if (sctype == SeriesChartType.Doughnut || sctype == SeriesChartType.StackedRose || sctype == SeriesChartType.Pie)
                {
                    schart.ChartAreas["Default"].Area3DStyle.Perspective = 80;
                    schart.ChartAreas["Default"].Area3DStyle.XAngle = 40;
                    schart.ChartAreas["Default"].Area3DStyle.YAngle = 90;
                }
                else if (sctype == SeriesChartType.Area || sctype == SeriesChartType.Bar || sctype == SeriesChartType.Column || sctype == SeriesChartType.Bubble || sctype == SeriesChartType.RangeColumn)
                {
                    schart.ChartAreas["Default"].Area3DStyle.Perspective = 20;
                    schart.ChartAreas["Default"].Area3DStyle.XAngle = 10;
                    schart.ChartAreas["Default"].Area3DStyle.YAngle = 20;
                }
 
                schart.ChartAreas["Default"].Area3DStyle.Enable3D = true;
                schart.ChartAreas["Default"].AxisX.LabelStyle.Interval = 1;
                schart.ChartAreas["Default"].Area3DStyle.PointDepth = 200;
                schart.ChartAreas["Default"].Area3DStyle.PointGapDepth = 0;
 
                schart.ChartAreas["Default"].BackColor = Color.White;
 
 
                //schart.Series["Series1"].CustomAttributes = "LabelStyle=Outside";
                schart.Series["Series1"].CustomAttributes = "LabelStyle=Disabled";
                schart.Series["Series1"].XValueIndexed = true;
 
                schart.Series["Series1"].PaletteCustomColors = new Color[] { Color.Red, Color.Yellow, Color.Blue, Color.Green, Color.Gray };
 
                schart.DataSource = dtAggregate.DefaultView;
                dtAggregate.DefaultView.Sort = "Sort column";
 
                schart.Series["Series1"].ValueMemberX = "ValueMemberX";
                schart.Series["Series1"].ValueMembersY = "ValueMemberY";
                schart.DataBind();
 
                if (sctype == SeriesChartType.Pie || sctype == SeriesChartType.Doughnut)
                {
                    schart.Legends["Default"].HeaderSeparator = LegendSeparatorType.Line;
                    schart.Legends["Default"].HeaderSeparatorColor = Color.Gray;
                    schart.Legends["Default"].Docking = LegendDocking.Bottom;
                    schart.Legends["Default"].Alignment = StringAlignment.Center;
                    schart.Legends["Default"].BorderStyle = ChartDashStyle.Solid;
                    schart.Legends["Default"].BorderColor = Color.Black;
                    schart.Legends["Default"].BorderWidth = 1;
                    schart.Legends["Default"].ItemColumnSeparator = LegendSeparatorType.Line;
 
                    LegendCellColumn firstColumn = new LegendCellColumn("Color", LegendCellColumnType.SeriesSymbol, string.Empty);
                    firstColumn.HeaderBackColor = Color.WhiteSmoke;
 
                    LegendCellColumn secondColumn = new LegendCellColumn("Scale", LegendCellColumnType.Text, "#LEGENDTEXT");
                    secondColumn.HeaderBackColor = Color.WhiteSmoke;
                    secondColumn.Alignment = ContentAlignment.MiddleLeft;
 
                    LegendCellColumn thirdColumn = new LegendCellColumn("Count", LegendCellColumnType.Text, "#VALY");
                    thirdColumn.HeaderBackColor = Color.WhiteSmoke;
 
                    schart.Legends["Default"].CellColumns.Add(firstColumn);
                    schart.Legends["Default"].CellColumns.Add(secondColumn);
                    schart.Legends["Default"].CellColumns.Add(thirdColumn);
                }
                else
                    schart.Legends.Clear();
 
              placeholder1.Controls.Add(schart);

Open in new window

0
 
MrFantastic6Commented:
I tried this example, but my new chart doesn't appear in the placeholder.  Everything is visible.  I wonder what I'm missing?
0
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.

Join & Write a Comment

Featured Post

Cloud Class® Course: Ruby Fundamentals

This course will introduce you to Ruby, as well as teach you about classes, methods, variables, data structures, loops, enumerable methods, and finishing touches.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now