功能: 登录界面打开主界面功能 (学习日记 2017-05-27)

登录界面打开主界面:登录界面完成后,打开主界面,而登陆界面关闭

事件winfrom窗体(此例中为frmLogin登录窗体,frm_Main主窗体)

frmLogin登录窗体的Hide()事件

frm_Main主窗体的ShowDialog()事件

frmLogin登录窗体的Close()事件

思路:

使用登录界面打开主界面界面,先隐藏登录界面,如果主页面对话框关闭,再关闭登录对话框。

  private void CheckLogin(DataTable dt1)
        {
            if (dt1.Rows.Count >= 1)
            {
                strOperaterId = dt1.Rows[0]["OperatorId"].ToString();
                strLoginUser = dt1.Rows[0]["Name"].ToString();
                frmMain frm_main = new frmMain();           //声明一个主界面
                this.Hide();                                //登录界面隐藏
                DialogResult DR = frm_main.ShowDialog();    //显示主界面
                if (DR == DialogResult.Cancel)              //关闭事件
                {
                    this.Close();                           关闭登录界面
                }  
            }
            else
            {
                labError.Text = "用户不存在,请检查输入";
            }
        }

区分:

为什么不能直接先使用Dispose()方法或者Close()方法关闭登录界面,然后再打开主界面? 这是因为主窗体是在登录窗体事件中打开。系统默认主窗体是登录窗口的一个子窗体,然后Dispose()方法或者Close() 方法都会关闭登录界面。无法再打开主窗体。

如果使用Hide()方法隐藏登录窗体行不行?  隐藏窗体确实可以,但是关闭了主窗体后,登录窗体仍然存在(它只是隐藏了,登录窗体资源仍在),无法关闭。因此使用隐藏窗体可以,但是必须要在关闭主窗体后再执行关闭登录窗体的操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值