为何隐藏窗口时会报错啊?
做了两个FORM,一个LOGINFORM,一个MAINFORM 
 登录窗口验证用户代码如下: 
 if   (UserDAL.ValidateUser(username,txtPassword.Text.Trim())) 
 { 
 	this.Parent.Hide(); 
 	MainForm   mForm   =   new   MainForm(); 
 	mForm.Show(); 
 } 
 else 
 { 
 	lblMessage.Text   =    "密码错误!请重输! "; 
 	lblMessage.Visible   =   true; 
 	txtPassword.Focus(); 
 } 
 为何this.Parent.Hide()这句执行会出错啊?应该如何写呢?
------解决方案--------------------this.Parent它有Parent么?  
 try 
 this.Hide
------解决方案--------------------if (Parent != null) Parent.Hide(); // Parent如果是null那就会报错
------解决方案--------------------...为啥呢? 
 难道是异步调用?不象啊