Ged Mead

Ged Mead (XTab) has been around computers since the 1980's when the first affordable home computers came on the market. His journey from that very first Dragon 32 to the present has taken him through many different facets of the IT Industry. These include formal training as a Systems Analyst, employment in a mainframe software development environment, and a short time spent demonstrating rugged military IT systems in the days when it took two strong men to carry a 'mobile' system.
His most rewarding challenge was the creation of a financial management system for a large organisation.
Now based in an idyllic lochside location in the West of Scotland, he is currently involved in a range of development projects, whenever he can drag his gaze away from the stunning surrounding views, that is!
Ged is a Microsoft MVP, Senior Editor for DevCity.NET, vbCity Developer Community Leader and Admin, Helper of the Month competition winner and DevCity.NET newsletter Editor.
View all articles by Ged Mead...
In Part 1 we created a Pie Chart by drawing directly on to the surface of the form using the form’s Graphics object. In this article, we are going to create a Bar Chart, again based on some notional sample data - sales figures from six European countries. However, this time we will draw the Bar Chart inside a PictureBox control.

In general, there is little difference between the two approaches – drawing on the form itself or drawing inside the picturebox.
In this project, we will draw the chart once the user has clicked a Button. As in Part 1, the display will be redrawn whenever it has been obscured or changed (this is known as "persisting" the drawing).
In the Pie Chart example we used the form’s OnPaint method to recreate the chart every time a redraw was required. This approach is absolutely fine in most situations . However, in order to add to our range of graphics skills, we are going to tackle the job from another angle, this time using a Bitmap object.
If you are completely new to graphics, you may well find some of the topics confusing. Sometimes there seems to be so many graphics objects, bitmaps, images, drawing surfaces being manipulated one after the other that you completely lose track of what each of them is supposed to be doing. But with the help of these articles it should all fall into place for you in the end.
I will explain step by step the graphics procedures which are used to draw the chart. By breaking much of the code down into quite small steps, I hope to make the various methods easier to follow. I have also included a fully commented demonstration version in the Visual Studio Solution which is attached to this article.