Ver Mensaje Individual
  #3 (permalink)  
Antiguo 01/09/2011, 14:26
laguzzigerardo
 
Fecha de Ingreso: agosto-2011
Ubicación: Buenos Aires
Mensajes: 78
Antigüedad: 12 años, 8 meses
Puntos: 10
Respuesta: Sólo una instancia de un formulario.

Me parece que en el caso de los formularios no conviene utilizar singleton (el patrón que muestra mvazquez). Porque cuando cierres el form vas a mantener la misma instancia al reabrirlo.

Sí no me equivoco estas buscando que el usuario no pueda abrir dos veces el mismo form. Tengo un ejemplo de una app en donde gestiono eso:

Código:
  if (usuariosToolStripMenuItem.Checked)
           _frmUsuarios.Close();
  else
  {
         _frmUsuarios = new FrmUsuarios(Manager);
         _frmUsuarios.FormClosed += new FormClosedEventHandler(frmUsuarios_FormClosed);
        _frmUsuarios.MdiParent = this;
        _frmUsuarios.Show();
   }

   usuariosToolStripMenuItem.Checked = !usuariosToolStripMenuItem.Checked;
El formulario principal tiene la instancia de _frmUsuarios, al hacer click sobre la opción del menú lo tildo, y en base a eso controlo si el usuario lo lanza solo una vez.

Te paso el link para que veas como funca:
http://www.orientadoanet.com/2011/08/c-programa-de-chat.html
__________________
www.orientadoanet.com