简明C#事件

C#事件:就是一个针对对象的可挂接回调函数。
1、声明回调原形,必须为 delegate .....XXXX();
2、在要添加事件的类中,声明事件。
3、在类中选择一个触发事件的时机。触发事件前,一定要先判断事件是否为空!
4、挂接事件。

using System;
public delegate void ChangeEvent();     //1、回调函数的原形

class myClass
{
    
public event ChangeEvent change;    //2、声明事件
    int _id;
    
public int ID
    
{
        
get return _id; }
        
set 
            
if ((1 == value) && (change != null))
                change();               
//3、触发事件。触发事件之前,先要判断事件是否已实例化的(取上面的change != null);
            _id = value; 
        }

    }

}


class Test
{
    
static void Main()
    
{
        myClass c 
= new myClass();
        
//4、c对象有一个事件change,下句是添加回调函数实例。
        c.change += new ChangeEvent(new Test().Ah);
        c.change 
+= new ChangeEvent(yiyi);
        c.ID 
= 1;                       
        Console.Write(
"c.ID :{0}", c.ID);
    }

    
static void yiyi()
    

        Console.Write(
"yiyi!!\n");
    }

    
void Ah()
    
{
        Console.Write(
"Ah!\n");
    }

}
  在网上查找一些关于事件的说明,头都看大了,自已写一个简单的说明。
  够用就行了,不要死拘语法,用一些基本的, 解决问题的方法就行。
  最后一句说,C#事件,就是一个针对对象的可挂接回调函数。
原文地址:https://www.cnblogs.com/freebird92/p/606215.html