首先在Form1(mainform)里:
private void Form1_Load(object sender, System.EventArgs e)
{
this.Visible = false;
Form2 frm = new Form2();
frm.ShowDialog(this);
}然后再Form2(loginform):
private void button1_Click(object sender, System.EventArgs e)
{
     //......
//进行验证代码
this.Owner.Visible=true;
this.Close(); }

解决方案 »

  1.   

    验证的代码写在loginform中,在loginform中可以声明个静态的bool变量来判断是否验证成功。
    如:
    public static bool isLogin=false;在mainform的Main函数中(init之前)写入
    Form2 frm = new Form2();
    frm.ShowDialog();
    if(!loginform.isLogin)return;
      

  2.   

    谢谢二位的解答!我的是用vs.net在做这东西。我的两个窗口分别是在两个文件中。我在Form1内申明了一个public static的string。我在Form2里面修改这个string的时候,被告知改变量不存在。我本来的意图是通过调用form2,要么返回还有列表,要么返回空值。