本帖最后由 foxd 于 2013-03-09 16:06:51 编辑

解决方案 »

  1.   

                Application.Run(new frmLogin());登陆之后点击确定的时候show  frmMain 
      

  2.   

    晕!你可以为frmMain声明一个属性,例如public frmLogin theForm{get;set;}
    然后再你的所谓form1中写:  frmLogin Login = new frmLogin(fmain);
      Login.ShowDialog();
      frmMain fmain = new frmMain();
      fmain.theForm = Login;
      fmain.Show();
      this.Hide();
      

  3.   

    不过,这里的this.Hide是很诡异的。通常你应该在逻辑设计上做到位,例如  frmLogin Login = new frmLogin(fmain);
      Login.ShowDialog();
      frmMain fmain = new frmMain();
      fmain.Closed += (s,e) => this.Close();
      fmain.theForm = Login;
      fmain.Show();
      this.Hide();
    这样才能保证将诡异的窗口能够变成不诡异的。