我有一个from1窗体和一个from2窗体我想实现的是在通过form1    from2 mfrm = new from2(); mfrm.Show();打开from2的同时关闭from1代码如何才能实现呢?
                   

解决方案 »

  1.   


    this.Hide();
    mfrm.Show();
      

  2.   

    可以在线程里使用Application.Run打开Form2,这样可以关闭Form1了。
      

  3.   

    form1只能隐藏,不能关闭,因为在form1中生成了form2的实例,如果form1被关闭了,form2也就不存在了
      

  4.   

    怎么不可以,我都用很久了.
          if (i > 0)
                {
                    Info.UserName = comboBox1.Text.ToLower();
                    this.Close();
                    this.Dispose();
                    FrmMain fmain = new FrmMain();
                    fmain.ShowDialog();
                }
                else
                {
                    MessageBox.Show("用户名或密码错误");
                    this.textBox2.Focus();
                    this.textBox2.SelectAll();
                    return;
                }=============        private void FrmLoad_Load(object sender, EventArgs e)
            {
                if (Process.GetProcessesByName(Process.GetCurrentProcess().ProcessName).Length > 1)
                {
                    MessageBox.Show("此程序已经运行.");
                    Environment.Exit(0);
                }
                else
                {
                    Info.connectionString = Lib.PubConstant.GetConnectionString("ConnectionString");
                    FrmLogin flogin = new FrmLogin();
                    flogin.ShowDialog();
                    this.Close();
                    this.Dispose();
                }
      

  5.   

    先把Program.cs中的Main方法中的Application.Run(New Form1);改为Application.Run(New Form2);
    再在Form2的Load时间里加上
    form1 frm = new from1();
    frm.Show();
    这样的话,Form1看起来是先启动的,而实际上Form2才是先启动的,Form1就可以放心的关闭了。
      

  6.   

    纠正上面的一处错误,第一行应该是
    先把Program.cs中的Main方法中的Application.Run(New Form1());改为Application.Run(New Form2)(); 
      

  7.   

    主窗体一关闭  整个程序就关闭了 隐藏掉主窗体就可以this.Hide();
    mfrm.Show();
      

  8.   

    主窗体不能关闭,只有程序结束才可以。
    这里把主窗体隐藏form1.hide();
      

  9.   

    可以用Application.Run(New Form2());
         this.Dispose();
      

  10.   

    在Program.cs文件里面加一行代码
    Application.Run(new Form2());
    然后你关闭Form1的时候就会启动Form2