que tienen una forma "FM" que es una ventana de información simple que se abre cada 10 minutos (fm.Show();
).¿Cómo comprobar si un formulario de Windows ya está abierto y cerrarlo si es así?
¿Cómo puedo hacer que cada 10 minutos se comprobará si la forma "FM" está abierto y si está abierto lo cierra y abre de nuevo!
Ahora la forma fm siempre se crea con form fm = new form();
así que cuando trato de comprobar si el formulario está abierto siempre será falsa y abrir una nueva ventana, incluso si hay una forma antes!
Es necesario disponer de una herramienta para darle una identidad única y luego comprobar si este formulario con identidad única se abre o no!
no quiero actualizar simplemente los datos en el formulario (fm), porque tengo una información compleja con botones.
El nombre del formulario es "UpdateWindow"
resolver mediante la siguiente:
Form fc = Application.OpenForms["UpdateWindow"];
if (fc != null)
fc.Close();
fc.Show();
¿Por qué quieres volver a abrirlo? ¿Quieres crear una nueva instancia? Quiero decir, ¿por qué no quieres llamar al método Show una vez más? –
hola, el programa completo es una herramienta interna en nuestra empresa que verifica si hay una actualización para uno de nuestros programas, funcionó bien, pero necesito cerrarlo y abrirlo de nuevo porque se actualiza información –
¿Por qué no? ¿Simplemente agrega un componente Timer al formulario y utiliza el temporizador para forzar una actualización de los datos en la pantalla? Aún mejor, podría enlazar los datos a un objeto para la actualización automática del estado. –