2D Graphics C# Tutorial

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
public class PenCustomDash : System.Windows.Forms.Form
{
  private System.ComponentModel.Container components = null;
  public PenCustomDash()
  {
    InitializeComponent();
    SetStyle(ControlStyles.ResizeRedraw, true);
  }
  protected override void Dispose( bool disposing )
  {
    if( disposing )
    {
      if (components != null) 
      {
        components.Dispose();
      }
    }
    base.Dispose( disposing );
  }
  private void InitializeComponent()
  {
    this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
    this.ClientSize = new System.Drawing.Size(211, 104);
    this.Text = "A Form with Style!";
    this.Paint += new System.Windows.Forms.PaintEventHandler(this.PenCustomDash_Paint);
  }
  [STAThread]
  static void Main() 
  {
    Application.Run(new PenCustomDash());
  }
  private void PenCustomDash_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
  {
    Pen customDashPen = new Pen(Color.Black, 10);
    float[] myDashes = {5.0f, 2.0f, 1.0f, 3.0f};
    customDashPen.DashPattern = myDashes;
    e.Graphics.DrawRectangle(customDashPen, ClientRectangle);
  }
}