2014-04-10 62 views
0

所以我有一个表单应用程序,必须在C#中...成功验证时关闭登录表

无论如何,即时通讯与我的登录屏幕有问题。

整个该死的应用程序完成除了这个补货的事情。

成功登录后,登录窗口显示并悬停。如何获得它的信息!?

这是我迄今为止

var MainMenu = new SwimmingApp.MainMenu(); 
var loginS = new Login(); 

loginS.Hide(); 
MainMenu.Show(); 

我也尝试application.exit。

另外,我有一个解决方案在两个不同的项目中的这两种形式。

感谢

+0

这是你的代码实际上样子?你似乎没有实际显示“登录”表单... –

+0

你在验证后是否尝试了login.cs上的应用程序退出? – apomene

+0

登录表单是startupform,它首先加载。 – Jonny

回答

3

问题:您正在创建的LoginForm的一个新的实例,并尝试来隐藏它而不是隐藏已经存在的LoginForm。

解决方案:您必须获取现有或已经加载(进入内存)登录表单的实例并隐藏它。

试试这个:

Login frmLogin =(Login) Application.OpenForms["Login"]; 
frmLogin.Hide(); 
+0

我得到的对象引用未设置为对象的实例。错误frmLogin.Hide(); – Jonny

+0

@Jonny:你需要在'OpenForms []'数组中指定正确的表单名称 –

-1

内登录方法,你可以使用

DialogResult = System.Windows.Forms.DialogResult.OK; 

或外部登录您可以使用

loginS.DialogResult = System.Windows.Forms.DialogResult.OK; 
+0

我想是一个弹出...是一个用户控件? – Lattanzio