C# Winform系统登录(登入/登出)架构设计

  C# Winform系统登录(登入/登出)架构设计

C# Winform系统登录(登入/登出)架构设计



一个简单的Login to MainForm架构,该示范程序演示了登录功能的设计,登入时状态显示,系统登出及初始化主窗体等功能,仅供参考。



登录界面:


贴图图片



主窗体:


贴图图片



部分源码如下:



Program.cs


C# Code:

[STAThread]

        static void Main()

        {

            Application.EnableVisualStyles();

            Application.SetCompatibleTextRenderingDefault(false);

            Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);

 

            //首先打开登陆窗体,登陆成功后初始化MDI主窗体

            if (frmLogin.Login())

            {

                frmMain.CurrentMainForm.Show();//显示主窗体

                Application.Run();

            }

            else//登录失败,退出程序

                Application.Exit();

        }

 


//来源:C/S框架网(www.csframework.com) QQ:1980854898



Login


C# Code:

private void btnLogin_Click(object sender, EventArgs e)

        {

            try

            {

                if (false == this.ValidateInput()) return;

 

                this.Cursor = Cursors.WaitCursor;

                this.SetButtonEnable(false);

                this.Update();//必须

                this.ShowLoginInfo("正在验证用户名及密码");

                if (SystemSecure.Login(txtUID.Text, txtPWD.Text)) //调用系统安全管理模块登录方法

                {

                    //

                    //授权成功, 下载用户权限数据.....

                    //

                    //登录成功,初始化主窗体,初始化进度在登录窗体的状态栏显示

                    IMainForm MDI = frmMain.CreateMainFormInsatance();

                    //MDI.InitUserInterface(new StatusBarMessage(lblLoading));

                    MDI.InitUserInterface(new LabelMessage(label3));

 

                    this.DialogResult = DialogResult.OK; //成功

                    this.Close(); //关闭登陆窗体

                }

                else

                {

                    this.ShowLoginInfo("登录失败,请检查用户名和密码!");

                    Msg.Warning("登录失败,请检查用户名和密码!");

                }

            }

            catch

            {

                this.SetButtonEnable(true);

                this.ShowLoginInfo("登录失败,请检查用户名和密码!");

                Msg.Warning("登录失败,请检查用户名和密码!");

            }

 

            this.Cursor = Cursors.Default;

        }


 


MainForm.InitUserInterface


C# Code:

public void InitUserInterface(IMsg status)

        {

            //

            //在这里初始化主窗体,如:加载模块,生成菜单,下载公共缓存数据等操作...

            //

            try

            {

                this.SuspendLayout();

 

                status.ShowMessage("正在初始化用户界面...");

 

                status.ShowMessage("正在加载模块...");

 

                status.ShowMessage("正在生成菜单...");

 

                status.ShowMessage("正在下载公共缓存数据...");

 

                status.ShowMessage("加载主窗体完成.");

 

                this.ResumeLayout();

            }

            catch (Exception ex)

            { Msg.ShowException(ex); }

        }




MainForm.menuLogout_Click


C# Code:

private void menuLogout_Click(object sender, EventArgs e)

        {

            if (!Application.AllowQuit) return; //程序不允许退出

 

            if (!Msg.AskQuestion("真的要登出吗?")) return;

 

            try

            {

                if (this.AnyDataChanged())

                {

                    Msg.Warning("系统检测到有数据窗体没有保存,不能登出!");

                    return;

                }

 

                this.Hide();

                if (frmLogin.Login())

                {

                    frmMain.DisposeOldForm();//关闭旧的主窗体,释放内存

                    frmMain.CurrentMainForm.Show();//显示登录窗体               

                }

 

                GC.Collect();

            }

            catch (Exception ex)

            {

                Msg.ShowException(ex);

            }

        }





C/S框架网|原创精神.创造价值.打造精品

扫一扫加微信
C/S框架网作者微信 C/S框架网|原创作品.质量保障.竭诚为您服务



Source Code:
版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
C/S框架网
发表评论

评论内容
昵称:
关联文章

C# Winform系统登录(/)架构设计
Winform程序实现系统/功能
(Login)(Logout)历史记录表增加IP字段
基于Web前端用户调用CSFramework.WebApi服务端登录接口实现
Winform框架登录界面大全|C/S框架网
C#.NET 会计系统开发框架模板(C/S Winform架构) 巨献!
基于集团组织架构数据权限系统快速开发框架(C#.NET Winform+支持多数据库)
系统登录
C/S架构管理系统框架|企业管理系统前端框架(C# Winform)
Winform C/S架构软件用户授权注册系统V2.1新功能(2021版)
CSFrameworkV2.x标准版成功案例 - C# Winform C/S架构MES系统
C# 简易POS零售系统架构设计源码(1)
软件开发与设计 - EMS-电子商城系统-[电子商务]长母婴商城 v1.1数据库表结构
C/S架构Winform插件化框架,Winform通用界面框架 - C#.NET
企业级数据权限框架 - 集团组织架构数据权限开发框架(C/S+Winform+DevExpress)
新增两个常用功能:1. 系统操作日志, 2.用户登录日志
C# Winform 进销存系统C/S架构开发框架已经形成
运行客户端错:无法打开登录所请求的数据库,登录失败
Winform企业级WCF快速开发框架平台(C/S架构+WCF+DevExpress+SQL多数据库)
C# Winform 三层架构代码生成器 V5.1版正式发布