举个例子
比如你的类里有个int类型的属性NumA
-
C# code
-
int a; public int A { set { a = value;} }
现在我们来做一个捕获这个属性A值改变的事件,事件名称定为NumChanged,下面就可以开始了,很简单
-
C# code
-
public delegate MyDelegate( object obj,EventArgs e); // 定义委托 public event MyDelegate NumChanged; // 定义事件 private void OnNumChange() // 事件监听 { if (NumChanged != null ) { NumChanged(obj,e); } }
最后,我们把事件监听放在属性赋值语句的后面
-
C# code
-
public int A { set { a = value; OnNumChange(); // 这样就完成了一个NumChanged,因为是在赋值后触发的这个事件,所以我们用过去式命名 } }
最后再说一遍,这个事件的作用就是在属性A改变后,做某些处理