窗体名是一个变量,如何判断这个窗体是否已经存在, 假如窗体名是 frm, 如何判断frm是否已经存在呢,
我想做到的是,如果窗体名存在的话,就打开这个窗体,不存在的话,就警示一下暂时还没有建立.

解决方案 »

  1.   

             Form _Form =Application.OpenForms["frm"];            if (_Form == null)
                {
    //提示
                }
                else
                {
                    _Form.Show();
                }
      

  2.   

     Form frm = new Form();
    frm.Name = chuang;                
    frm.Show();
    chuang是一个变量,变量名为 "检验管理",实际上是有这个窗体的,但就是show出来的是空白窗体,不知道怎么会事.
      

  3.   

    1楼正解.
    在C/S中,很多地方需判断.
    Form _Form =Application.OpenForms["frm"];            if (_Form == null)
                {
    //提示
                }
                else
                {
                    _Form.Show();
                }
      

  4.   

    你new Form()  那不是一个空白窗体 那是什么啊!!!!!!!!!
      

  5.   

    单例模式,如果让程序只运行一次则:
       #region Mutex对象
       Mutex mt=new Mutex(true,"MutexInstance");
       if(mt.WaitOne(0,false))
       Application.Run(new runonce());
       else
       MessageBox.Show("您的程序已经在运行了,不能运行两个实例!");
       #endregion
      

  6.   


    Form _Form = Application.OpenForms["frm"];
    if (_Form == null)
    {
         _Form = new Form(); 
    }
    _Form.Show(); 
      

  7.   

    Form1 frm = new Form1();Form _Form = Application.OpenForms["Form1"];  //这里应该是Form1 而不是frm
    if (_Form == null) 

        //提示 

    else 

        _Form.Show(); 

      

  8.   

    Form frm = (Form)(Application.OpenForms["frm"]);
    if(frm != null)
        MessageBox.Show("frm已存在");
      

  9.   

    这个问题有这么复杂吗Form f = (Form)(Application.OpenForms["frm"]); 
    if(f!= null)    //frm已经打开就直接show 
    {
        f.Show();
    }
    else    //如果frm没有被打开(其实就是说frm不存在)就new出来一个
    {
        Form frm = new Form();
        frm.Show();
    }
      

  10.   

    if(frm==null || frm.IsDisposed)
    {
        MessageBox.Show("暂时还没有建立");
       //重新new
       frm=new Form();
       frm.show();
    }else
    {
       frm.show();
    }