title: Detect how many screens are used end on which screen a form must load VB.net
body: <p>I've searched the web and couldn't find much on the following questions:</p>
  
  <ol>
  <li>How can i detect with vb.net how many screens i have (and which resolution they have). </li>
  <li>How can i send out a identify monitor command (to know which number each screen has) </li>
  <li>How can i (after detection) choose on which screen my form must open?</li>
  </ol>
  
  <p>Can someone help me out?</p>
  
  <p>In my case i have 4 screens but i have to choose from the main form on which screen i want to load a second form.</p>
  
  <p>I found this on the web but this doesn't detect any screens:</p>
  
  <pre><code>Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  
  Dim form As New Form
  
  Dim screen As Screen
  
  ' We want to display a form on screen 1
  
  screen = screen.AllScreens(1)
  
  ' Set the StartPosition to Manual otherwise the system will assign an automatic start position
  
  form.StartPosition = FormStartPosition.Manual
  
  ' Set the form location so it appears at Location (100, 100) on the screen 1
  
  form.Location = screen.Bounds.Location + new Point(100, 100)
  
  ' Show the form
  
  form.ShowDialog(Me)
  
  End Sub
  </code></pre>