//注意,这个方法定义为保护的,虚拟的,代表子类还可以进行覆盖,改变触发事件的行为 //甚至可以不触发事件 protected virtual void OnNumberReached(NumberEventArgs e) { //判断事件是否为null,也就是是否绑定了方法 if (NumberReached != null) { NumberReached(this, e); } }
public void DoWithLoop(int number) { for (int i = 0; i <= 100; i++) { //触发事件的条件到了 if (i == number) { NumberEventArgs e = new NumberEventArgs(i); OnNumberReached(e); } } }