C# WinForm登录窗口代码

Main窗体为应用程式主窗体,Login为登录窗体。均为SDI窗体。      两种实现方式如下:

  1、应用程式入口放在Login窗体,在Login窗体实现登录机制,验证通过则创建Main窗体的实例,并将自身隐藏。

  具体实现:

  ///Step1:验证登录
  ///Step2:通过
   this.hide(); 
   oMain.Show();

  虽然可以实现登录机制,但是Login窗体并没有释放掉,而是被隐藏掉,内存资源未有效利用。这种方式其实是不可取的。

  2、应用程式入口放在Main窗体,在Main函数中创建Login窗体的实例,Login窗体完成登录验证,返回Main窗体,程式继续执行。需要注意的是Login窗体只有验证通过时返回值才为DialogResult.OK,其余时返回DialogResult.None。这样在Main窗体就可以根据返回值判断是否创建Main窗体的实例。

        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        static void Main() 
        {
            frmLogin login = new frmLogin();
            login.ShowDialog();
            if(login.DialogResult.Equals(DialogResult.OK))
            {
                login.Close();
                Application.Run(new frmMain());
            }
        }

登陆窗体,验证成功执行代码 this.DialogResult=DialogResult.OK;

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏跟着阿笨一起玩NET

C# 子窗体中调用父窗体中的方法(或多窗体之间方法调用)

本文转载:http://www.csframework.com/archive/2/arc-2-20110805-1771.htm

1.3K20
来自专栏张善友的专栏

Microsoft 防跨站点脚本库AntiXSS Library v4.2.1

AntiXSS 库目前处于版本 4.2.1,下载地址:http://www.microsoft.com/download/en/details.aspx?id=...

19760
来自专栏iOS技术杂谈

iOS多线程——RunLoop与GCD、AutoreleasePool你要知道的iOS多线程NSThread、GCD、NSOperation、RunLoop都在这里

你要知道的iOS多线程NSThread、GCD、NSOperation、RunLoop都在这里 转载请注明出处 https://cloud.tencent.co...

566110
来自专栏C/C++基础

C#Winform编程的基础知识

1. 将第一个窗体的值传给第二个窗体,用到第二个窗体的重载构造函数 Form2 form2=new Form(str1);

10420
来自专栏张善友的专栏

Silverlight 2 的基础XAML语法学习

要想成为Silverlight 的开发高手,熟练通达XAML语法是必由之路。现在我们来一个空的XAML模板。 Silverlight 1.0 的模板是这样的...

20390
来自专栏ASP.NETCore

.NET Core中ADO.NET SqlClient的使用与常见问题

  在很多要求性能的项目中,我们都要使用传统的ADO.NET的方式来完成我们日常的工作;目前有一些网友问有关于.NET Core操作SQL Server的问题在...

29410
来自专栏张善友的专栏

每周.NET前沿技术文章摘要(2017-05-24)

汇总国外.NET社区相关文章,覆盖.NET ,ASP.NET等内容。

64000
来自专栏张善友的专栏

Mono P/Invoke :DLLImport

Mono 的初衷是为了吸引更多的Windows .Net程序员来加入Linux平台的开发。但在Linux世界中C语言依然是主流。很多时候一些关键应用(比如大型笛...

327100
来自专栏10km的专栏

java nio: Files.isWritable判断文件夹可写(创建子文件夹或文件)

java.nio.file.Files.isWritable方法用于测试一个文件是否可写。但是对于文件夹,这个办法并不能用来测试文件夹是否可以创建子文件夹或文件...

23250
来自专栏逆向技术

PE文件格式详解,第一讲,DOS头文件格式

           PE文件格式详解,第一讲,DOS头文件格式 今天讲解PE文件格式的DOS头文件格式 首先我们要理解,什么是文件格式,我们常说的EXE可执行...

23150

扫码关注云+社区

领取腾讯云代金券