2D Graphics C#

using System;
  using System.Drawing;
  using System.Drawing.Drawing2D;
  using System.Collections;
  using System.ComponentModel;
  using System.Windows.Forms;
  using System.Data;
  public class Form1 : System.Windows.Forms.Form
  {
    public Form1()
    {
      InitializeComponent();
      SetStyle(ControlStyles.ResizeRedraw, true);
    }
    private void InitializeComponent()
    {
      this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
      this.ClientSize = new System.Drawing.Size(211, 104);
      this.Text = "";
      this.Paint += new System.Windows.Forms.PaintEventHandler(this.Form1_Paint);
    }
    static void Main() 
    {
      Application.Run(new Form1());
    }
    private void Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
    {
      Graphics g = e.Graphics;
      Rectangle r = new Rectangle(10, 10, 100, 100);
      LinearGradientBrush theBrush = null;
      int yOffSet = 10;
      Array obj = Enum.GetValues(typeof(LinearGradientMode));
      for(int x = 0; x < obj.Length; x++)
      {
        LinearGradientMode temp = (LinearGradientMode)obj.GetValue(x);
        theBrush = new LinearGradientBrush(r, Color.Red, 
          Color.Blue, temp);      
        
        g.DrawString(temp.ToString(), new Font("Times New Roman", 10), 
          new SolidBrush(Color.Black), 0, yOffSet);
        g. FillRectangle(theBrush, 120, yOffSet, 200, 50);
        yOffSet += 80;
      }
    }
  }