有些新手说我写的比较复杂,想要点简单又实用的东西,而是就写下了这篇文章...,老鸟直接跳过.
在很项目中都涉及到事件监听及任务处理的代码,例如:想监听一个网络状态,就像QQ一样,一但网线一拨,它马上就弹出连接网络失败类似的东东,虽然我没深入了解QQ用的是什么原理,但下面的代码却可以实现一样的功能,各位如有更好的方法,欢迎讨论。
先上一段监听属性值的的代码
新建一个DoEvent.cs类
using System;
using System.Web;
namespace VvxT.Web
{
public class DoEvent
{
//需要监控的字段
private static int currentState = -1;
/// <summary>
/// 构造函数
/// </summary>
public DoEvent()
{
OnMyStateChanged += new MyStateChanged(DoEvent_BeforeStateChanged);
}
//定义一个委托
private delegate void MyStateChanged(object sender, EventArgs e);
//定义一个委托关链的事件
private event MyStateChanged OnMyStateChanged;
//事件处理函数&#