C#中WinForm窗体的单例模式,避免窗体被实例化多次

View Code
在MDI窗体中使用单例模式可以有效的避免同个窗体被实例化多次 //==============字窗体的修改================ //一.将构造函数改成private
private FrmSub1()
{
InitializeComponent();
}

//二.声明一个字窗体的类型的静态变量
private static FrmSub1 instance;

//三.通过静态方法创建字窗体
public static FrmSub1 CreateFrom()
{
//判断是否存在该窗体,或时候该字窗体是否被释放过,如果不存在该窗体,则 new 一个字窗体
if (instance == null || instance.IsDisposed)
{
instance
= new FrmSub1();
}
return instance;
}
//==============MDI中的调用===========================
//通过子类的静态方法实例化窗体

FrmSub1 frm
= FrmSub1.CreateFrom();
frm.MdiParent
= this;
frm.Show();
posted @ 2011-04-19 20:27  阳.光.的.味.道  阅读(2179)  评论(0编辑  收藏  举报