示例#1
0
文件: App.xaml.cs 项目: jaywhen/Pmer
        protected override void OnStartup(StartupEventArgs e)
        {
            base.OnStartup(e);

            MainWindow mv = new MainWindow();

            this.MainWindow   = mv;
            this.ShutdownMode = ShutdownMode.OnMainWindowClose;

            // 检测是否具备弹出登录窗口的条件
            DbCreator db = new DbCreator();

            db.CreateDbConnection();
            bool isLogin = db.Init();

            if (!isLogin)
            {
                RegistView registView = new RegistView();
                bool?      result     = registView.ShowDialog();
                // 如果注册成功,显示登录界面
                if (result == true)
                {
                    LoginView lw  = new LoginView();
                    bool?     ret = lw.ShowDialog();
                    string    key = lw.PasswordBox.Password;
                    if (ret.Value == true)
                    {
                        mv = new MainWindow(true, key);
                        this.MainWindow = mv;
                        MainWindow.ShowDialog();
                    }
                } // 若用户关闭注册窗口,则退出进程
                else
                {
                    MainWindow.Close();
                }
            }
            else
            {
                LoginView loginView = new LoginView();

                bool?  resultLogin = loginView.ShowDialog();
                string key         = loginView.PasswordBox.Password;
                // 登录成功,进入主界面
                if (resultLogin.Value == true)
                {
                    mv = new MainWindow(true, key);
                    this.MainWindow = mv;
                    MainWindow.ShowDialog();
                } // 否则,退出进程
                else
                {
                    // 需要一个确认退出提示
                    MainWindow.Close();
                }
            }
        }