子窗体只能打开一个(单例模式)
1、在MDI主窗体中先要设置其属性:isMdiContainer=true;
2、在要实现单例模式(也就是,一次只能打开一个该窗口)的窗体对象中,添加一个私有字段和属性,
为了保证不能通过new Form1()方式创建窗体,所以还要保证 其构造函数私有化。
private static FrmClass instance; //静态字段 public static FrmClass Instance //提供外部访问的属性 { get { //未创建对象,或释放了该窗体。 if(instance==null && instance.IsDisposed) { instance=new FrmClass(); } return instance; } } //私有化不能 new()了 private FrmClass() { // }
3、在主窗体中调用时,
FrmClass frmClass =FrmClass.Instance;//创建对象 FrmClass.MdiParent = this;//设置窗体的父窗体是当前窗体