using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
namespace WindowsApplication2
{
    class Class1<T> where T : Form, new()
    {
        private static T mInst;
        public Class1()
        {
            // Here i am just stuffing our single form instance code
            //  into the class constructor
            if (mInst == null)
            {
                mInst = new T();
                mInst.Show();
            }
            else
            {
                mInst.WindowState = FormWindowState.Normal;
                mInst.Focus();
            }
        }
        // You need this method for when a form closes
        public void letGo()
        {
            mInst = null;
        }
    }
}
http://www.techpowerup.com/forums/threads/sample-c-code-fun-with-generics-for-single-form-instances.34742/ 
--------------------------------------------------------------------------------------
private class open_form<T> where T: Form, new()
{
private static T _form = null;
public open_form(Form main_form)
{
if(_form == null || _form.IsDisposed)
{
_form = new T();
_form.MdiParent = main_form;
_form.Show();
_form.Location = new Point(0, 0);
}
}
}
--------------------------------------------------------------------
open_form<Well_Production> new_form = new open_form<Well_Production>(this);
--------------------------------------------------------------------------------------
private class open_form<T> where T: Form, new()
{
private static T _form = null;
public open_form(Form main_form)
{
if(_form == null || _form.IsDisposed)
{
_form = new T();
_form.MdiParent = main_form;
_form.Show();
_form.Location = new Point(0, 0);
}
}
}
--------------------------------------------------------------------
open_form<Well_Production> new_form = new open_form<Well_Production>(this);
 
No comments:
Post a Comment