Click here to Skip to main content
Click here to Skip to main content

New Microsoft Chart Controls for Web and Windows Forms Applications

, 1 Dec 2008 CPOL
Rate this:
Please Sign up or sign in to vote.
Microsoft has just launched a very rich chart control for .NET web and Windows Forms applications. Let’s take a look at some features from it.


Microsoft has just launched a very rich chart control for .NET web and Windows Forms applications. Let’s take a look at some features from it.


Chart Types

The following chart types are available:

  • Bar and columns
  • Line
  • Area
  • Pie and Doughnut
  • Point
  • Range
  • Circular
  • Accumulation
  • Data Distribution
  • Financial

You still have the option to combine more than one chart type.

Bind Types

The following options are available to be used as bind types for your application charts:

  • XML Files
  • Excel Files
  • CSV Files
  • Arrays
  • IEnumerable objects
  • Dataviews

How To...

The examples and documentation are really good and to work with the new Microsoft Chart control is very straightforward. Drag and drop a chart control, set properties in design and / or runtime and it’s done!


The namespace you are going to use is System.Web.UI.DataVisualization.Charting.

Main Properties

  • ChartAreas: It is the area where a chart is plotted. Your chart may contain more than one chart area, that means you may plot more than one chart by render and you may even overlap charts.
  • Series: It is the data you may plot on your chart area.
  • ChartType: The chart type property is under the Series property and defines how your data series will be displayed on a chart area.
  • Axes: Defines properties for the X and Y axes like appearance and titles.
  • Palette: Defines the colors set for your chart.
  • Titles: Defines text that may be used to describe a chart, an axis or any other part of the chart.
  • Legends: Defines the legends that will display the data series information.
  • Labels: Defines text that may be displayed close to axis, points and custom labels.


The following code uses two arrays to create a simple pie chart:

double[] yValues = { 10, 27.5, 7, 12, 45.5};
string[] xNames = { “Mike”, “John”, “William”, “George”, “Alex” };
myChart.Series[0].Points.DataBindXY(xNames, yValues);



Picture 1: Pie chart created with array databind.

Using the same code but changing some values will produce the following bar chart:


Picture 2: Column chart created with an array databind.

More Features

This new control set is really rich on the level of customization allowed. Some other features of the new Microsoft Chart control include:

  • Image plot or binary streaming rendering
  • Allows a very complex set of data to be plotted
  • 3D visualization control (perspective, angle, rotation)
  • Events to give even more control over how to plot data, custom images, post plot actions and a click event
  • May be used in conjunction with Ajax to create real time charts, use charts as trigger to load data
  • Drill down chart with preview
  • Image map selection
  • Custom animated tooltips
  • Capture of mouse events

If you want to get more information, take a look at the documentation, check over 200 examples included on the samples or visit the Chart Forum.


  • 1st December, 2008: Initial post


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Cirilo Meggiolaro
Team Leader
Canada Canada
I am a brazilian architect / development team lead located in Toronto, Canada.
During the last years I have been working on enterprise applications especially on Microsoft platform for companies located in South and North America.
Application design, coding and especially tunning, debugging and performance related issues troubleshooting make part of my skills bag.
I keep a blog called ITTecture with daily tips related to architecture, performance and .NET coding where you will find some tips, tricks, thoughts and even concepts related to system architecture, application performance and all the cool (but sometimes not so cool) stuff that I’ve heard, read, debbuged, fixed, refactored and coded and how to avoid long overnights far away from home!!!

Comments and Discussions

QuestionSave Chart in C# Pinmembersankar666416-May-12 23:54 
AnswerRe: Save Chart in C# PinprotectorPete O'Hanlon17-May-12 0:30 
Questionthanks very much Pinmemberparastoo_8121421-Jan-12 21:05 
Generaltwo Pies with connecting lines PinmemberSysSoft12-Apr-11 4:25 
QuestionWIndows 7 Support Microsoft Chart Controls Pinmembersundaramoorthyp11-Nov-10 17:44 
AnswerRe: WIndows 7 Support Microsoft Chart Controls Pinmemberiohn20008-Sep-11 0:05 
GeneralRe: WIndows 7 Support Microsoft Chart Controls Pinmemberfgoldenstein11-Jan-12 8:46 
GeneralXCOPY web deployment. PinmemberManique3-Mar-10 23:55 
GeneralVersion PinmemberCiro Zamudio3-Feb-10 5:37 
This version is only used for graphics. Net 3.5, or you can use with ASP.NET 2.0 with VB Studio 2008?
GeneralInstructions for Using the Chart Controls in ASP.NET MVC PinmemberMichael Ceranski25-Jan-10 4:49 
QuestionHow to use linegraph Pinmemberduo915-Jul-09 22:33 
AnswerRe: How to use linegraph [modified] Pinmemberwilliamw23-Jul-09 1:32 
GeneralRe: How to use linegraph [modified] Pinmemberduo923-Jul-09 17:41 
GeneralRe: How to use linegraph Pinmemberwilliamw28-Jul-09 2:48 
GeneralRe: How to use linegraph [modified] Pinmemberduo930-Jul-09 22:13 
GeneralRe: How to use linegraph Pinmemberwilliamw30-Jul-09 23:43 
GeneralRe: How to use linegraph Pinmemberduo931-Jul-09 0:08 
GeneralRe: How to use linegraph Pinmemberwilliamw31-Jul-09 0:15 
GeneralRe: How to use linegraph Pinmemberduo92-Aug-09 22:39 
QuestionVery Slow Pinmemberhsachdevah15-Jul-09 6:03 
Generalcontrols working with WPF browser PinmemberEnda Mannion27-May-09 13:40 
QuestionMS Chart PinmemberMember 400306830-Apr-09 4:11 
GeneralThanks for giving a hint. Pinmemberravi_mishra16-Apr-09 0:35 
QuestionDoes this control has a unmanaged version? Pinmemberlsgt5-Jan-09 15:20 
GeneralThanks. PinmemberHamed Mosavi17-Dec-08 0:03 
Generalthanks it is good!! PinmemberSeraph_summer7-Dec-08 23:56 
GeneralMy vote of 1 PinmemberMaximilian Korporal3-Dec-08 2:43 
GeneralMy vote of 2 Pinmemberkornakar2-Dec-08 20:36 
GeneralMy vote of 2 Pinmemberpita20092-Dec-08 7:13 
General;} Pinmemberradioman.lt2-Dec-08 2:25 
GeneralMy vote of 1 Pinmembergrundt1-Dec-08 14:10 
GeneralRe: My vote of 1 PinmemberAbu Abdillah1-Dec-08 22:41 
GeneralRe: My vote of 1 PinmemberGreizzerland2-Dec-08 3:34 
GeneralRe: My vote of 1 PinmembermBonafe9-Dec-08 4:17 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web01 | 2.8.150327.1 | Last Updated 1 Dec 2008
Article Copyright 2008 by Cirilo Meggiolaro
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid