Ir al contenido principal

Como evitar repetir una Forma en un Contenedor Principal MDI

Cuando desarrollamos aplicaciones mas complejas, que llevan mas de unas cuantas formas es importante designar un contenedor principal para todas las demás formas que se abrirán dentro del menú principal, cuando hayamos dominado esta técnica tendremos algunas otras dudas, por ejemplo como manejar el no abrir mas de una misma forma en un contenedor principal siempre y cuando sea esto necesario, dependiendo de la naturaleza de tu aplicación y de tus formas, habrá ocasiones en las que sea necesario hacerlo y en algunas otras no para cuando este sea el caso podemos utilizar la siguiente validación que nos permitirá saber si una forma ya se encuentra abierta y posicionarnos en ella de ser necesario.
Tutorial C# : MDI Parent


El MDI Parent o contenedor principal, es una forma en Windows que contendrá todas aquellas otras formas de tu aplicación, es el equivalente a una MasterPage en ASP.NET solo que en un ambiente de escritorio, para definir una forma padre basta con localizar las propiedades de la forma e indicar MDIParent en true, una vez hecho esto se le asignara un área que sera la encargada de albergar a las otras formas que se llamen mediante esta.

Validando que un Form ya se encuentra abierto

Para hacer esto basta con agregar el siguiente código c# en donde llamemos a la forma que por lo regular sera en alguna parte del toolstrip menú:

Primero declaramos fuera una variable Form general y le llamaremos Forma:

Lo que sigue después es asignar a esa variable la forma que abriremos y una vez asignada ver si ya se encuentra abierta:



Una vez hecho esto validaremos que una forma no se encuentre abierta, en este ejemplo mostramos un mensaje pero solo es indicativo tu decides si mostrarlo o solo hacer el Focus a la forma.

Comentarios

  1. Respuestas
    1. Pero que no funciona, cabe mencionar que este código es solo para las ultimas versiones del .NET Framework.

      Eliminar
  2. muy buen código funciona al 100 me quito de problemas =)

    ResponderEliminar
  3. funciona a la perfeccion muy bueno

    ResponderEliminar
  4. Excelente!, llevaba horas buscando una solución y esto me sirvió perfectamente!

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

Crear un Sistema con conexión a BD paso a paso C#

Primero que nada esta estoy en un proceso de re-estructuración del Blog, anteriormente los artículos eran vagos con poca información y poco explícitos donde solo publicaba los enlaces de descarga de los proyectos, para cambiar esto ahora empezare a publicar soluciones completas, mejor estructurado el contenido de mis artículos y aunque no prometo hacerlo muy seguido debido a que pocas veces tengo tiempo, prometo que los contenidos serán de mayor calidad y mas útiles. Para demostrar esto primero que nada publicare una de las mayores herramientas que un programador novato y con un poco de experiencia pueden tener, la conexión con una BD, en este caso SQL Server que es la que mejor se integra con Visual Studio y la Plataforma .NET, empecemos.

Llenar un DropdownList con Datos ASP.NET C#

En Asp.net llenar un Dropdownlist es un poco distinto a cuando llenamos un Combobox en una aplicación de Windows Form, aunque son muy similares un Combobox tiene distintas funciones y por lo tanto diferentes propiedades, que cambian en un control DropdownList de ASP.NET y es necesario identificar cuales son y cual es la forma correcta de llenar un DropdownList, en este ejemplo lo haremos utilizando no datos estáticos sino que aprenderemos como hacerlos con datos de una consulta en SQL, lo demás a continuación.

Chart en C# - Control para Graficos en Windows Form

El siguiente articulo es un pequeño tutorial sobre como utilizar el Control "Chart" de .NET para crear gráficos en una aplicación, en este caso una aplicación para Windows, para su funcionamiento es simple y permite ayudarnos para crear gráficos en alguna de nuestras aplicaciones donde sea necesario este tipo de implementacion, así que tendremos que crear un proyecto nuevo del tipo Windows Form donde necesitaremos principalmente los siguientes componentes: - 3 Controles Textbox para ingresar los valores al gráfico. - 2 Botones para las 2 diferentes acciones que realizaremos. - 1 Control Chart que si no lo ubican se encuentra en la sección Data de su Visual Studio o Visual C# Express.
De tal forma que el resultado sea similar al de la imagen mostrada, ahora pasaremos al código para el primer botón que se encargara de asignar los valores al control Chart.