Form1的后台代码:

namespace _08事件登陆案例
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

private void Form1_Load(object sender, EventArgs e)
        {
            FrmLogin.Evt+=new EventHandler(FrmLogin_Evt);    
//给自定义控件创建了一个事件
        }

private void FrmLogin_Evt(object sender, EventArgs e)
        {
           MyEventArgs mea= e as MyEventArgs;
            //判断
            if (mea.Name=="admin"&&mea.Pwd=="123")
            {
                mea.IsOk = true;
            }
        }
    }
}

自定义控件 MyLogin的后台代码:

namespace _08事件登陆案例
{
    public partial class MyLogin : UserControl
    {
        public MyLogin()
        {
            InitializeComponent();
        }

public event EventHandler Evt;//事件
        private void btnLogin_Click(object sender, EventArgs e)
        {
            //判断用户名和密码是否正确,如果正确则该控件 背景颜色变成红色
            //要做什么事不知道,但是肯定有事情发生
            //e占位
            if (this.Evt!=null)
            {
                //实例化MyEventArgs类的对象,通过该对象的两个属性存储两个文本框中的值
                MyEventArgs mea = new MyEventArgs();
                mea.Name = txtName.Text;//账号
                mea.Pwd = txtPwd.Text;//密码

this.Evt(this, mea);               //调用事件

if (mea.IsOk)
                {
                    this.BackColor = Color.Red;
                }
                else
                {
                    this.BackColor = Color.Green;
                }
            }
        }
    }
    //重新创建了一个符合需求的类,用来传值
    public class MyEventArgs : EventArgs
    {
        public MyEventArgs()
        {
            this.IsOk = false;
        }
        public string Name { get; set; }
        public string Pwd { get; set; }
        public bool IsOk { get; set; }
    }
}

C#基础练习(事件登陆案例)的更多相关文章

  1. 09_android入门_采用android-async-http开源项目的GET方式或POST方式实现登陆案例

    根据08_android入门_android-async-http开源项目介绍及使用方法的介绍,我们通过最常见的登陆案例进行介绍android-async-http开源项目中有关类的使用.希望对你学习 ...

  2. android 登陆案例_最终版本 sharedpreference

    xml  与之前的登陆案例相同 java代码: package com.itheima.login; import java.util.Map; import com.itheima.login.ut ...

  3. 09_android入门_採用android-async-http开源项目的GET方式或POST方式实现登陆案例

    依据08_android入门_android-async-http开源项目介绍及用法的介绍,我们通过最常见的登陆案例进行介绍android-async-http开源项目中有关类的使用.希望对你学习an ...

  4. JS 的事件基础、事件侦听与抛发、

    前言 JavaScript是一种事件驱动型语言.事件驱动是指JavaScript引擎并不是在看到代码之后就会立即执行,而是会在合适的时间才去执行.这个合适的时间是指当某个事件发生之后(例如一个输入框的 ...

  5. [.net 面向对象编程基础] (22) 事件

    [.net 面向对象编程基础] (22)  事件 事件(Event)是学习.net面向对象编程很重要的一部分,在学习事件之前,我们实际上已经在很多地方使用了事件,比如控件的click事件等,这些都是. ...

  6. SQL Server 扩展事件(Extented Events)从入门到进阶(2)——在GUI中创建基础扩展事件

    本文属于 SQL Server 扩展事件(Extented Events)从入门到进阶 系列 第一篇文章中提到了如何在Profiler中创建跟踪(trace),并以服务器端(server-side)跟 ...

  7. 07_android入门_採用HttpClient的POST方式、GET方式分别实现登陆案例

    1.简单介绍 HttpClient 是 Apache Jakarta Common 下的子项目,能够用来提供高效的.最新的.功能丰富的支持 HTTP 协议的客户端编程工具包,而且它支持 HTTP 协议 ...

  8. jQuery基础之事件

    jQuery基础之事件方法,如下图: 代码实现: <script src="JS/jquery-1.12.4.min.js"></script> <s ...

  9. C#基础之事件(2)

    在“C#基础之事件(1)”中已对事件有了一个大概,这里对事件进行更深入的学习. 本节按以下内容展开: 1.事件拥有者与事件响应者的关系: 2.事件订阅的多种写法: 3.事件的订阅和取消订阅: 4.多事 ...

随机推荐

  1. Perl 关于 use strict 的用法

    什么场合要用 use strict 当你的程序有一定的行数时,尤其是在一页放不下时,或者是你找不到发生错误的原因时. 为什么要用 use strict? 众多的原因之一是帮你寻找因为错误拼写造成的错误 ...

  2. Arrays.asList的使用及异常问题

    将数组转成List问题,通常我们习惯这样写成:List<String> list = Arrays.asList("1","2"); 于是我们这样就 ...

  3. python之range(), xrange()

    可以这样理解: range()立即执行,返回结果 xrange()延迟执行,需要时再返回结果.

  4. IOS开发之──应用之间调用(2)

    在上一篇文章中,讲解了如何在自己应用之间调用问题,今天介绍一下如果调用IOS自带的app的方法 一.调用app store界面方法 在实际开发中,往往要推荐自己其他应用和推荐自己的收费软件,那么我们就 ...

  5. 键盘样式风格有关设置-iOS开发

    一.键盘风格 UIKit框架支持8种风格键盘. typedef  enum  { UIKeyboardTypeDefault,                 // 默认键盘:支持所有字符 UIKey ...

  6. entityframwork

    entityframwork映射部分: public class NorthwindContext : DbContext { public DbSet<CATEGORIES> Categ ...

  7. Eclipse常用功能

    功能(Functions):内置运行java程序的插件(JDT:java develop tools)工作集(WorkSet)(Task list)计划任务管理器(Mylyn)系统配置(Prefere ...

  8. 1561:The more, The Better - hdu

    Problem DescriptionACboy很喜欢玩一种战略游戏,在一个地图上,有N座城堡,每座城堡都有一定的宝物,在每次游戏中ACboy允许攻克M个城堡并获得里面的宝物.但由于地理位置原因,有些 ...

  9. 2109&2535: [Noi2010]Plane 航空管制 - BZOJ

    Description世博期间,上海的航空客运量大大超过了平时,随之而来的航空管制也频频发生.最近,小X就因为航空管制,连续两次在机场被延误超过了两小时.对此,小X表示很不满意. 在这次来烟台的路上, ...

  10. 【转】并查集&MST题集

    转自:http://blog.csdn.net/shahdza/article/details/7779230 [HDU]1213 How Many Tables 基础并查集★1272 小希的迷宫 基 ...