[WinForm] MDI窗口问题:
在用户登录后,就进入到MDI窗口,我想把登录那个窗体关掉。我写了一段这样的代码: this.close();
结果整个程序都关闭了。。 请问这要怎么解决呢?如果把MDI窗口关闭后就直接把整个程序关闭,要怎么实现呢? --------------------编程问答-------------------- 推荐lz看一篇文章"如何用C#写一个简单的Login窗口"
http://blog.csdn.net/knight94/archive/2006/04/06/652394.aspx
看完之后就清楚该怎么处理了 --------------------编程问答-------------------- 登陆窗口不要设为主窗体 --------------------编程问答-------------------- 那就隐藏试试看
你先调用新窗口,再把当前窗口隐藏
如果是主窗口就全部关闭了
还有就是重新开一个进程打开那当前窗口就可以关闭了 --------------------编程问答-------------------- 登录窗口不设为主窗口,同时在主窗口的Form_Load中new登录窗口。
这种状态下主窗口是不显示的,先显示登录窗口,
如果在登录窗口显示时同时也显示的话,则需要使用异步调用。
定义方法:
void ShowLogin()
{
if(this.InvokeRequired)
{
MethodInvoker invoker = new MethodInvoker (ShowLogin);
this.Invoke(invoker);
}
else
{
FormLogin login = new FormLogin();
login.ShowDialog();
}
}
invoker.BeginInvoke();
}
void MainForm_Load()
{
MethodInvoker invoker = new MethodInvoker (ShowLogin);
invoker.BeginInvoke();
}
--------------------编程问答-------------------- 登录窗口只是一个普通的Form窗体(Login)啊。登录进去后才是MDI(MainFrame)主窗体. --------------------编程问答-------------------- 那就用Login.Close --------------------编程问答-------------------- Login.Close() 点击登录按钮整个程序关闭了。。
隐藏Login界面呢,也不行。。管不MDI窗口,Login界面还在运行,因为他隐藏了。。 --------------------编程问答-------------------- 不过话说回来。。 关闭MDI窗口,Login窗口也跟着关闭了呢? --------------------编程问答-------------------- 没人帮解答下啊。。
那关闭MDI主窗口触发的是什么事件啊????????????????? --------------------编程问答-------------------- private void btnLogin_Click(object sender, EventArgs e)
{
this.Visible = false;
this.ShowInTaskbar = false;
frmMain frm = new frmMain();
frm.Owner = this;
frm.Show();
}
关闭MDI(MainFrame)主窗体时用:Appliction.Exit();
--------------------编程问答-------------------- 不要把login窗体设为主窗体,
在主函数main里设置先启动login窗体,
然后再启动主界面窗体 --------------------编程问答--------------------
关闭MDI触发的是什么事件? --------------------编程问答--------------------
补充:.NET技术 , C#