Ultime notizie
Home » Programmazione » Come evitare di aprire nuovamente una finestra MDI già aperta con C#

Come evitare di aprire nuovamente una finestra MDI già aperta con C#

Adottando il pattern Singleton ad una Form MDI Child possiamo risolvere il problema di aprire  nuovamente una finestra MDI già aperta in modo molto semplice.

Ad esempio supponiamo di avere una MDI Child denominata MyMdiChild basterà cambiare il codice della classe in questo modo :

public partial class MyMdiChild : Form
    {
        private static MyMdiChild thiForm = null;
        public static MyMdiChild GetIstance(Form mdiParent)
        {
            if (thiForm == null)
            {
                thiForm = new MyMdiChild();
                thiForm.MdiParent = mdiParent;
            }
            return thiForm;
        }
        public MyMdiChild()
        {
            InitializeComponent();
        }
    }
Quando dovremo visualizare la nostra MyMdiChil, nella Form parent sarà sufficiente scrivere :
MyMdiChil.GetIstance().Show();
e visualizzeremo sempre la stessa istanza della Form interessata, senza aprirne delle altre.


About Luigi Melisi

Analista Programmatore Senior, Team Leader in svariati progetti, con esperienza decennale in analisi, progettazione e sviluppo di software gestionale desktop e web, di E-Commerce e sistemi di Content Management System.In questi anni ho utilizzato in prevalenza tecnologie Microsoft (Visual C#, ASP.NET, SQL Server, Visual Studio, Windows Mobile, ecc.) e programmazione orientata agli oggetti, ma ho maturato esperienza anche in altre tecnologie come Java e PHP.Attualmente mi occupo di consulenza informatica, di sviluppo software gestionale personalizzato, realizzazione di Siti Web, di sistemi di Content Management System. ed E-Commerce su misura del cliente.

Check Also

Come ricavare il dominio di primo livello dell’indirizzo attuale

Se ti si presenta la necessità di sapere come ricavare il dominio di primo livello …

Lascia un commento

%d blogger hanno fatto clic su Mi Piace per questo: