Foros del Web » Programación para mayores de 30 ;) » .NET »

Cerrar Formularios en C#

Estas en el tema de Cerrar Formularios en C# en el foro de .NET en Foros del Web. Que tal como estan amigos foreros. El problema que tengo en este momento es que he creado un programa en C# donde ocupo tres formularios ...
  #1 (permalink)  
Antiguo 08/12/2006, 13:13
 
Fecha de Ingreso: octubre-2006
Mensajes: 86
Antigüedad: 17 años, 7 meses
Puntos: 1
Exclamación Cerrar Formularios en C#

Que tal como estan amigos foreros.
El problema que tengo en este momento es que he creado un programa en C#
donde ocupo tres formularios Form1, Form2 y Form3.
Cada uno de ellos me ejecuta un proceso la cosa es que el primero en cargar es el Form1 cuando este termine el proceso se debe cerrar y cargar el Form2 cuando el Form2 termine de hacer el proceso se debe cerrar y cargar el Form3 y cuando el Form3 finalise el proceso, se me cierre el programa.

el abrir y cerrar de los formulario debe ser automatico.

Y la verdad no se como hacer porque cuando habro el Form2 y quiero cerrar el Form1 se me finaliza el programa

de antemano les agradesco su ayuda
  #2 (permalink)  
Antiguo 08/12/2006, 14:05
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 10 meses
Puntos: 50
Re: Cerrar Formularios en C#

y si pruebas con hide para los forms 1 y 2, y para el ultimo formulario le das un Application.ExitThread()
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #3 (permalink)  
Antiguo 08/12/2006, 14:54
 
Fecha de Ingreso: octubre-2006
Mensajes: 86
Antigüedad: 17 años, 7 meses
Puntos: 1
Sonrisa Re: Cerrar Formularios en C#

Gracias por tu tiempo

Ya casi me funciono lo unico es que no logro cerrar el Form2 despues de que finalise el proceso siempre me queda visible.
El Form1 lo oculto de la siguiente forma:
Digitando el siguiente fragmento de codigo en Program.cs
Form1 Acceso = new Form1();
if (Acceso.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
Acceso.Close();
Application.Run(new Form2());
}

y digitando lo siguiente en Form1:
this.DialogResult = DialogResult.OK;
Hide();

y no se como puedo hacer para ocultar el Form2 te agradeceria cualquier ayuda
  #4 (permalink)  
Antiguo 08/12/2006, 16:46
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 10 meses
Puntos: 50
Re: Cerrar Formularios en C#

pues, por que no aplicas el mismo procedimiento, generando un metodo con un sender para que funcione la aplicacion, no se, mas o menos asi:

private void funcion(object sender, object siguienteForm)
{
Form acceso = new Form();
//Form siguiente = new Form();

acceso = (Form)sender;
if (acceso.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
acceso.Close();
Application.Run(new (Form)siguienteForm);
}
}

ya en los forms llamas al metodo

funcion(this, nextform);

Algo asi mas o menos, espero te ayude, ya que el form1 va a hacer practicamente lo mismo que el form2 y el 3 acaba el proceso, espero haberme explicado...
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #5 (permalink)  
Antiguo 08/12/2006, 17:17
 
Fecha de Ingreso: octubre-2006
Mensajes: 86
Antigüedad: 17 años, 7 meses
Puntos: 1
Re: Cerrar Formularios en C#

Fijate que la funcion me da un error a la hora de compilarlo en la linea

Application.Run(new (Form)siguienteForm);

me dice que espera un () o []

y ya estube rebisando pero no le encuentro solución como en la sintaxis original alfinal del nombre del formulario lleva parentesis

Application.Run(new Form2());

No se si eso esta afectando y deberas muchas gracias por tu ayuda
  #6 (permalink)  
Antiguo 21/10/2007, 12:33
 
Fecha de Ingreso: octubre-2007
Mensajes: 1
Antigüedad: 16 años, 7 meses
Puntos: 1
Re: Cerrar Formularios en C#

Hola a todos, La forma en que yo oculto mis Forms es:
// Esta linea de codigo crea un nuevo formulario
Form2 Formdos= new Form2();
Formdos.show();
// Esta linea de codigo oculta mi formulario actual
this.Visible=false;
  #7 (permalink)  
Antiguo 03/09/2008, 07:49
 
Fecha de Ingreso: septiembre-2008
Mensajes: 1
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Cerrar Formularios en C#

Hola,
he seguido vuestros consejos y todo perfecto, pero ahora me surge el problema de volver a un formulario que he ocultado anteriormente, y que no puedo volver a crear porque necesito los datos que tenía antes.
Por favor, no sé de que forma puedo heredar formularios ya creados.

Gracias.
  #8 (permalink)  
Antiguo 04/09/2008, 07:41
Avatar de mvazquez  
Fecha de Ingreso: octubre-2004
Ubicación: Monterrey - México
Mensajes: 875
Antigüedad: 19 años, 7 meses
Puntos: 8
Respuesta: Cerrar Formularios en C#

Hola Ana, yo tengo el mismo problema, una vez que genero el objeto (formulario) si lo vuelvo a crear pierdo los datos, entonces estoy con eso de crearlo una sola vez y poder accesarlo sin problema, si has logrado solucionarlo por favor compartelo o a mi correo [email protected]

Gracias.
  #9 (permalink)  
Antiguo 05/10/2010, 11:09
Avatar de JxDarkAngel  
Fecha de Ingreso: septiembre-2009
Mensajes: 82
Antigüedad: 14 años, 8 meses
Puntos: 2
Respuesta: Cerrar Formularios en C#

La solucion posible podria haber sido, pasar como parametro al siguiente formulario el Form Padre (El principal)

Se muestra por primera vez Form1 -> Formulario Padre
Desde este formulario haces visible el Form2

Al momento de hacerlo visible
Form2 objForm2=new Form2(this);
objForm2.Show();

Y ....

this.Hide();

En el Form2, en su contructor recibes ese Fomulario del tipo Form1

Form1 Padre=null;
//Constructor
public Form2(Form1 prmPadre)
{
Padre=prmPadre;
}

Cuando Cierres Form2, Cierras Padre

Padre.Close(); Para finalizar la aplicacion
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 3 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 11:11.