Net中事件的用法之一

1.事件与委托的关系

  委托是一种类型
  事件是委托的一个实例

2.事件的实例说明

namespace MyEvent
{
    //委托的声明
    public delegate void DoSometing();

    /// <summary>
    ///  委托与事件的关系
    ///  委托是一种类型
    ///  事件是委托的一个实例
    /// </summary>
    public class MyEvent
    {
        public DoSometing doSomethingDelegate;//委托的一个变量
        public event DoSometing doSomethingEvent;//一个事件,就是委托的一个变量,加上了event关键字
        //事件的使用
        public void Invoke()
        {
            if (doSomethingEvent != null)
            {
                doSomethingEvent();
            }
        }
    }
}
namespace MyEvent
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("欢迎来到流星小子博客学习");
            MyEvent myEvent = new MyEvent();
           // myEvent.doSomethingEvent += new DoSometing(ShowSomething);
            myEvent.doSomethingEvent += ShowSomething;//为事件实例化
            myEvent.Invoke();//触发事件
            Console.Read();
        }
        private static void ShowSomething()
        {
            Console.WriteLine("ShowSomething");
        }
    }
}
时间: 2024-11-02 23:21:13

Net中事件的用法之一的相关文章

Net中事件的用法之二

1.委托与事件的区别 事件对权限做了控制 1.委托可以直接调用 事件不可以直接调用 2.委托允许外面直接赋值 事件不允许外面直接赋值 2.事件与委托的实例比较 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MyEvent { //委托的声明 public delegate void DoSometing(); /// <summary> /// 委托

flex中dispatchEvent的用法(自定义事件) .

Evevt和EventDispatcher类在as3的事件机制中是很重要的角色,dispatchEvent()是EventDispatcher类的一个事件发送方法,它可以发送出Event类或其子类的实例,在as3中所有的显示对象都可以发送事件,因为as3中所有的显示对象都是EventDispatcher子类DisplayObject的实例. 发送事件有三种方式:继承EventDispatcher,如sprite等显示对象.复合EventDispatcher或其子类.实现IEventDispatc

jQuery中事件绑定

一.前言 最近在做项目中要用到jQuery来绑定事件,首先想到的是$(selector).事件名();这样绑定事件的方式,这种方式对事件进行绑定其实也就是bind()方法,但当选择器匹配的元素过多,$(selector).事件名();对每个元素进行迭代绑定,会影响性能.除了这种方式可以绑定事件以外,还有live()(已过期).delegate().on()方法绑定事件,接下来分析一下它们的区别,以及使用哪种方式最值得推荐.由于live()方法已过期,只分析另外三种,欢迎拍砖.吐槽~~~ 二.用法

[学习总结]4、Android的ViewGroup中事件的传递机制(一)

本文主要针对dispatchTouchEvent,onInterceptTouchEvent,onTouchEvent三个方法,通过简单的例子来简单的介绍下. 根据字面意思的理解,dispatchTouchEvent分发触摸事件,onInterceptTouchEvent拦截触摸事件,onTouchEvent触摸事件.正如它们各自的字面意思,下面简单的列出各自的作用和用法. 1.dispatchTouchEvent作用:决定事件是否由onInterceptTouchEvent来拦截处理. 返回s

MFC中关闭窗口的几种办法+MFC中MessageBox的用法

MFC中关闭窗口的几种办法: 退出程序用AfxGetMainWnd()->SendMessage(WM_CLOSE); 关闭当前窗口用DestroyWindow( ); 关闭模式对话框用EndDialog(0); MFC中MessageBox的用法 消息框是个很常用的控件,属性比较多,本文列出了它的一些常用方法,及指出了它的一些应用场合.1.MessageBox("这是一个最简单的消息框!");2.MessageBox("这是一个有标题的消息框!","

[转载]js中return的用法

一.返回控制与函数结果,语法为:return 表达式; 语句结束函数执行,返回调用函数,而且把表达式的值作为函数的结果 二.返回控制,无函数结果,语法为:return;  在大多数情况下,为事件处理函数返回false,可以防止默认的事件行为.例如,默认情况下点击一个元素,页面会跳转到该元素href属性指定的页.    Return False 就相当于终止符,Return True 就相当于执行符.    在js中return false的作用一般是用来取消默认动作的.比如你单击一个链接除了触发

VC++ 浅谈VS2010中CMFCToolBar的用法

本文将给大家介绍Visual Studio 2010中CMFCToolBar的用法,CMFCToolBar可以让用户自定义工具栏图标,使用静态成员函数SetUserImages()将一个CMFCToolBarImages对象设置进去,由所有CMFCToolBar对象共享. AD: 自从VS2008中增加了一些特性的菜单,但这些特性在帮助中说明的很少,给使用者造成了很多麻烦.笔者经过搜索以及自己的摸索,对其的用法有了初步了解,形成本文,如果能够为后来者解决一些问题,笔者将会感到欣慰. 一.向导自动

mysql中event的用法详解

一.基本概念mysql5.1版本开始引进event概念.event既“时间触发器”,与triggers的事件触发不同,event类似与linux crontab计划任务,用于时间触发.通过单独或调用存储过程使用,在某一特定的时间点,触发相关的SQL语句或存储过程. 二.适用范围对于每隔一段时间就有固定需求的操作,如创建表,删除数据等操作,可以使用event来处理. 例如:使用event在每月的1日凌晨1点自动创建下个月需要使用的三张表. 三.使用权限单独使用event调用SQL语句时,查看和创建

关于gevent的协程间通信及队列和事件event用法

前言: 今天就写点gevent的高级点的用法,对于我来说 这些也是常用的gevent模块. gevent的AsyncResutl模块的用途,看字眼的意思是一个异步的任务的结果. 其实官方的说法也让人有些发蒙.  其实说白了就是协程间的通信,我是老板,让大哥和小弟同事去收账,小弟做完了后,会等大哥来问话. 如果小弟没有完成,还在做着事情,那大哥会在一个时间里,等待小弟返回结果.一直等 ! 在实战中这个就很有意思了.   我们同时做一个事情,但是我们又需要互相的帮助,或者是互相的通信.  这个时候就