2D Graphics C# Tutorial

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Windows.Forms;
  class Form1 : Form
  {
    public Form1()
    {
      SetStyle(ControlStyles.Opaque, true);
      Bounds = new Rectangle(0, 0, 500, 300);
    }
    protected override void OnPaint(PaintEventArgs e)
    {
      Graphics g = e.Graphics;
      int y = 0;
      g.FillRectangle(Brushes.White, ClientRectangle);
      Font aFont = new Font("Arial", 16, FontStyle.Bold | FontStyle.Italic);
      Rectangle rect = new Rectangle(0, y, 400, aFont.Height);
      g.DrawRectangle(Pens.Blue, rect);
      StringFormat sf = new StringFormat();
      sf.Alignment = StringAlignment.Far;
      g.DrawString("This text is right justified.", aFont, Brushes.Blue,rect, sf);
      y += aFont.Height + 20;
      aFont.Dispose();
    }
  
    [STAThread]
    static void Main()
    {
      Application.EnableVisualStyles();
      Application.Run(new Form1());
    }
  }