title: WindowsFormsApplication1.Form1.Dispose(bool)':no suitable method found to override
body: <p>For an assignment I've had to convert a fractal rendering program from Java to C# and I think I've done it but when i try to run it I get the error that is present in the title and I have no idea why it is happening. This is the code for the renderer itself which presents me with no errors:</p>
  
  <pre><code>using System;
  using System.Collections.Generic;
  using System.ComponentModel;
  using System.Data;
  using System.Drawing;
  using System.Linq;
  using System.Text;
  using System.Threading.Tasks;
  using System.Windows.Forms;
  
  namespace Form1
  {
  public partial class Form1 : Form
  {
      public Form1()
      {
  
  
          init();
          start();
          this.DoubleBuffered = true;
  
  
      }
      //code to convert HSB to RGB from HSB.cs. All your code so i made it take up less space. 
      public struct HSBColor
      {
          float h;
          float s;
          float b;
          int a;
          public HSBColor(float h, float s, float b) { this.a = 0xff; this.h = Math.Min(Math.Max(h, 0), 255); this.s = Math.Min(Math.Max(s, 0), 255); this.b = Math.Min(Math.Max(b, 0), 255); }
          public HSBColor(int a, float h, float s, float b) { this.a = a; this.h = Math.Min(Math.Max(h, 0), 255); this.s = Math.Min(Math.Max(s, 0), 255); this.b = Math.Min(Math.Max(b, 0), 255); }
          public float H { get { return h; } }
          public float S { get { return s; } }
          public float B { get { return b; } }
          public int A { get { return a; } }
          public Color Color { get { return FromHSB(this); } }
          public static Color FromHSB(HSBColor hsbColor)
          {
              float r = hsbColor.b;
              float g = hsbColor.b;
              float b = hsbColor.b;
              if (hsbColor.s != 0)
              {
                  float max = hsbColor.b; float dif = hsbColor.b * hsbColor.s / 255f; float min = hsbColor.b - dif; float h = hsbColor.h * 360f / 255f;
                  if (h &lt; 60f) { r = max; g = h * dif / 60f + min; b = min; }
                  else if (h &lt; 120f) { r = -(h - 120f) * dif / 60f + min; g = max; b = min; }
                  else if (h &lt; 180f) { r = min; g = max; b = (h - 120f) * dif / 60f + min; }
                  else if (h &lt; 240f) { r = min; g = -(h - 240f) * dif / 60f + min; b = max; }
                  else if (h &lt; 300f) { r = (h - 240f) * dif / 60f + min; g = min; b = max; }
                  else if (h &lt;= 360f) { r = max; g = min; b = -(h - 360f) * dif / 60 + min; }
                  else { r = 0; g = 0; b = 0; }
              }
              return Color.FromArgb(hsbColor.a, (int)Math.Round(Math.Min(Math.Max(r, 0), 255)), (int)Math.Round(Math.Min(Math.Max(g, 0), 255)), (int)Math.Round(Math.Min(Math.Max(b, 0), 255)));
          }
      }
      private const int MAX = 256;      // max iterations
      private const double SX = -2.025; // start value real
      private const double SY = -1.125; // start value imaginary
      private const double EX = 0.6;    // end value real
      private const double EY = 1.125;  // end value imaginary
      private static int x1, y1, xs, ys, xe, ye;
      private static double xstart, ystart, xende, yende, xzoom, yzoom;
      private static float xy;
      private int c = 0;
      //private Image picture; Taken out, not needed
      // create rectangle variable JGB
      Rectangle rec;
      private Graphics g1;
      //private Cursor c1, c2; Taken out, not needed
      private System.Drawing.Bitmap bitmap;
      public void init()
      {
          //setSize(640, 480); changed this code to JGB:
          this.Size = new Size(640, 480);
          // Taken all lines out below. Not needed.
          /*finished = false; 
          addMouseListener(this);
          addMouseMotionListener(this);
          c1 = new Cursor(Cursor.WAIT_CURSOR);
          c2 = new Cursor(Cursor.CROSSHAIR_CURSOR); */
          x1 = 640;
          y1 = 480;
          xy = (float)x1 / (float)y1;
          //picture = createImage(x1, y1); Taken out and replaced with JGB:
          bitmap = new Bitmap(x1, y1);
          //g1 = picture.getGraphics(); changed to get my bitmap 
          g1 = Graphics.FromImage(bitmap);
          //finished = true; Finished variable deleted so not needed
      }
      //Code below didnt appear to do anything so i deleted it
      /*public void destroy() // delete all instances 
      {
          if (finished)
          {
              removeMouseListener(this);
              removeMouseMotionListener(this);
              picture = null;
              g1 = null;
              c1 = null;
              c2 = null;
              System.gc(); // garbage collection
          }
      } */
  
      public void start()
      {
          //action = false;
          //rectangle = false;
  
  
          initvalues();
  
          // added dialog box for instance loading and save varaibles needed for position and zoom to text file
          DialogResult dialog = MessageBox.Show("Would You Like to Load Your Last Instance?", "Load Instance?", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
          if (dialog == DialogResult.Yes)
          {
  
              string[] lines = System.IO.File.ReadAllLines(@"C:\Users\Public\Writelines.txt");
              xzoom = System.Convert.ToDouble(lines[0]);
              yzoom = System.Convert.ToDouble(lines[1]);
              xstart = System.Convert.ToDouble(lines[2]);
              ystart = System.Convert.ToDouble(lines[3]);
          }
          else
          {
              xzoom = (xende - xstart) / (double)x1;
              yzoom = (yende - ystart) / (double)y1;
          }
  
          mandelbrot();
      }
      public void stop()
      {
      }
      /*public void paint(Graphics g, PaintEventArgs e)
      {
          update(g);
      }
     public void update(Graphics g)
      {
          //g.DrawImage(picture, 0, 0);
  
      }*/
      private void mandelbrot()
      {
          int x, y;
          float h, b, alt = 0.0f;
          Color color;
  
  
          Pen pen = new Pen(Color.Black);
          for (x = 0; x &lt; x1; x += 2)
              for (y = 0; y &lt; y1; y++)
              {
                  h = pointcolour(xstart + xzoom * (double)x, ystart + yzoom * (double)y, c);
                  if (h != alt)
                  {
  
  
                      b = 1.0f - h * h;
  
                      color = HSBColor.FromHSB(new HSBColor(h * 255, 0.8f * 255, b * 255));
                      pen = new Pen(color);
                      alt = h;
  
                  }
                  g1.DrawLine(pen, x, y, x + 1, y);
              }
  
  
      }
  
      private float pointcolour(double xwert, double ywert, int j)
      {
          double r = 0.0, i = 0.0, m = 0.0;
  
          // int j = 0;
  
          while ((j &lt; MAX) &amp;&amp; (m &lt; 4.0))
          {
              j++;
              m = r * r - i * i;
              i = 2.0 * r * i + ywert;
              r = m + xwert;
          }
          return (float)j / (float)MAX;
      }
      private void initvalues()
      {
          xstart = SX;
          ystart = SY;
          xende = EX;
          yende = EY;
          if ((float)((xende - xstart) / (yende - ystart)) != xy)
              xstart = xende - (yende - ystart) * (double)xy;
      }
  
      private void Form1_Paint(object sender, PaintEventArgs e)
      {
          Graphics g1 = e.Graphics;
          g1.DrawImage(bitmap, 0, 0, x1, y1);
          using (Pen pen = new Pen(Color.White, 2))
          {
              e.Graphics.DrawRectangle(pen, rec);
          }
          Invalidate();
  
  
      }
      //added load method
  
      private void Form1_MouseMove(object sender, MouseEventArgs e)
      {
          if (e.Button == MouseButtons.Left)
          {
              xe = e.X;
              ye = e.Y;
              if (xs &lt; xe)
              {
                  if (ys &lt; ye) rec = new Rectangle(xs, ys, (xe - xs), (ye - ys));
                  else rec = new Rectangle(xs, ye, (xe - xs), (ys - ye));
              }
              else
              {
                  if (ys &lt; ye) rec = new Rectangle(xe, ys, (xs - xe), (ye - ys));
                  else rec = new Rectangle(xe, ye, (xs - xe), (ys - ye));
              }
  
  
              this.Invalidate();
          }
  
  
  
      }
  
      private void Form1_MouseDown(object sender, MouseEventArgs e)
      {
  
          if (e.Button == MouseButtons.Left)
          {
              // e.consume();  
              xs = e.X;
              ys = e.Y; // starting point y
              this.Invalidate();
          }
  
      }
  
      private void Form1_MouseUp(object sender, MouseEventArgs e)
      {
  
  
          rec = new Rectangle(0, 0, 0, 0);
          if (e.Button == MouseButtons.Left)
          {
              int z, w;
              //e.consume();
  
              //xe = e.X;
              //ye = e.Y;
              if (xs &gt; xe)
              {
                  z = xs;
                  xs = xe;
                  xe = z;
              }
              if (ys &gt; ye)
              {
                  z = ys;
                  ys = ye;
                  ye = z;
              }
              w = (xe - xs);
              z = (ye - ys);
              if ((w &lt; 2) &amp;&amp; (z &lt; 2)) initvalues();
              else
              {
                  if (((float)w &gt; (float)z * xy)) ye = (int)((float)ys + (float)w / xy);
                  else xe = (int)((float)xs + (float)z * xy);
                  xende = xstart + xzoom * (double)xe;
                  yende = ystart + yzoom * (double)ye;
                  xstart += xzoom * (double)xs;
                  ystart += yzoom * (double)ys;
              }
              xzoom = (xende - xstart) / (double)x1;
              yzoom = (yende - ystart) / (double)y1;
  
              mandelbrot();
  
              string stringxzoom = xzoom.ToString();
              string stringyzoom = yzoom.ToString();
              string stringystart = ystart.ToString();
              string stringxstart = xstart.ToString();
              string[] lines = { stringxzoom, stringyzoom, stringxstart, stringystart };
  
              System.IO.File.WriteAllLines(@"C:\Users\Public\Writelines.txt", lines);
              this.Invalidate();
              //Repaint();
  
          }
  
      }
  
  
      private void restartToolStripMenuItem_Click(object sender, EventArgs e)
      {
          Application.Restart();
      }
      private void exitToolStripMenuItem1_Click(object sender, EventArgs e)
      {
  
  
  
          Application.Exit();
      }
  
  
  
  
      private void menuToolStripMenuItem_Click(object sender, EventArgs e)
      {
  
      }
  
  
      private void menuStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
      {
  
      }
  
  
  
  
  }
  }
  </code></pre>
  
  <p>and this is the code that is used for the form designer which was auto generated and I'm not sure why an error is being presented because I've never had one before:</p>
  
  <pre><code>namespace WindowsFormsApplication1
  {
  partial class Form1
  {
      /// &lt;summary&gt;
      /// Required designer variable.
      /// &lt;/summary&gt;
      private System.ComponentModel.IContainer components = null;
  
      /// &lt;summary&gt;
      /// Clean up any resources being used.
      /// &lt;/summary&gt;
      /// &lt;param name="disposing"&gt;true if managed resources should be disposed; otherwise, false.&lt;/param&gt;
      protected override void Dispose(bool disposing)
      {
          if (disposing &amp;&amp; (components != null))
          {
              components.Dispose();
          }
          base.Dispose(disposing);
      }
  
      #region Windows Form Designer generated code
  
      /// &lt;summary&gt;
      /// Required method for Designer support - do not modify
      /// the contents of this method with the code editor.
      /// &lt;/summary&gt;
      private void InitializeComponent()
      {
          this.components = new System.ComponentModel.Container();
          this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
          this.Text = "Form1";
      }
  
      #endregion
  }
  }
  </code></pre>