When using modeless forms the user can close the form manually. Use the created property to check whether this is the case.
Example:
class Form1 : Form { Form2 modelessForm = null; //On mouse click show Form2 void onMouseClick(MouseButtons button, int x, int y) { if (modelessForm == null || !modelessForm.Created) { modelessForm = new Form2() } modelessForm.Show(); } }