title: Showing a Windows form on a secondary monitor?
body: <p>I'm trying to set a Windows Form on secondary monitor, as follows:</p>
  
  <pre><code>private void button1_Click(object sender, EventArgs e)
  {
      MatrixView n = new MatrixView();
      Screen[] screens = Screen.AllScreens;
      setFormLocation(n, screens[1]);
      n.Show();
  }
  
  private void setFormLocation(Form form, Screen screen)
  {
      // first method
      Rectangle bounds = screen.Bounds;
      form.SetBounds(bounds.X, bounds.Y, bounds.Width, bounds.Height);
  
      // second method
      //Point location = screen.Bounds.Location;
      //Size size = screen.Bounds.Size;
  
      //form.Left = location.X;
      //form.Top = location.Y;
      //form.Width = size.Width;
      //form.Height = size.Height;
  }
  </code></pre>
  
  <p>The properties of bounds seem correct, but in both methods I've tried, this maximizes the form on the primary monitor.  Any ideas?</p>