温馨提示×

winform窗体如何设置只打开一个

小亿
379
2024-01-25 00:42:23
栏目: 智能运维

要设置Winform窗体只能打开一个实例,可以使用单例模式来实现。

  1. 首先,在窗体的类中添加一个私有的静态成员变量,用于保存唯一的实例。
private static Form1 instance;
  1. 然后,将窗体的构造函数设置为私有,以防止直接通过new关键字创建实例。
private Form1()
{
    InitializeComponent();
}
  1. 接下来,创建一个公共的静态方法,用于获取窗体的唯一实例。在该方法中,首先检查实例是否已经存在,如果不存在则创建实例并保存到静态成员变量中,最后返回实例。
public static Form1 GetInstance()
{
    if (instance == null || instance.IsDisposed)
    {
        instance = new Form1();
    }
    return instance;
}
  1. 最后,在需要打开窗体的地方,调用GetInstance方法获取窗体的实例并显示出来。
Form1 form = Form1.GetInstance();
form.Show();

这样,无论调用多少次GetInstance方法,都只会返回同一个窗体实例,确保了只能打开一个窗体。

0