求一个事件的实例. 越简单越好. 

解决方案 »

  1.   

    最简单的就是Button
    Button类的定义:
    public class Button : WebControl, IButtonControl, IPostBackEventHandler
    {
    public event EventHandler Click;
    .........
    }在你的代码里:
    Button btn1 = new Button();
    btn1.Click += new EventHandler(btn1_Click);明白?就是Button这个类在定义时,不知道你会给它的事件做什么操作,需要你自己添加
      

  2.   


    /// <summary>
        /// IHaveAEvent 具有一个属性MyName,和一个事件OnChanged
        /// 当MyName属性发生变化时,产生OnChanged事件
        /// </summary>
        public class IHaveAEvent
        {
            #region 事件
            //这2句可以定义一个事件OnChanged
            public delegate void Changed(string str);
            public event Changed OnChanged;        //这里定义了一个激活事件的私有方法
            void ActiveOnChanged(string str)
            {
                if (OnChanged != null)
                {
                    OnChanged(str);
                }
            }
            #endregion        #region 属性
            string myname = "";
            public string MyName
            {
                get
                {
                    return myname;
                }
                set
                {
                    if (myname != value)
                    {
                        myname = value;
                        //激活OnChanged事件
                        ActiveOnChanged(myname);
                    }
                }
            }
            #endregion
        }    /// <summary>
        /// MyClass 包含一个IHaveAEvent类。
        /// 构造函数实例化了一个IHaveAEvent类型的对象ihe。
        /// 并且实现了OnChanged事件的处理方法。
        /// 公用方法SetName会激活ihe的OnChanged事件
        /// </summary>
        class MyClass
        {
            IHaveAEvent ihe = null;        public MyClass()
            {
                ihe = new IHaveAEvent();
                //声明OnChanged事件的处理方法名称
                ihe.OnChanged += new IHaveAEvent.Changed(ihe_OnChanged);
            }        void ihe_OnChanged(string str)
            {
                //throw new Exception("The method or operation is not implemented.");
                Debug.WriteLine("OnChanged事件: " + str);
            }        public void SetName(string str)
            {
                //为ihe的MyName属性赋值,
                //如果str与ihe的MyName属性值不同,
                //将激活ihe的OnChanged事件
                ihe.MyName = str;
            }
        }
      

  3.   


    ihe.OnChanged += new IHaveAEvent.Changed(ihe_OnChanged);
     这个吗,  把委托加到事件对象里???????
      

  4.   

      //声明OnChanged事件的处理方法名称
      ihe.OnChanged += new IHaveAEvent.Changed(ihe_OnChanged);
    为OnChanged事件附加一个处理函数,名称是ihe_OnChanged;下面是ihe_OnChanged的实现
    void ihe_OnChanged(string str)
    {
        //throw new Exception("The method or operation is not implemented.");
        //在调试输出窗口打印
        Debug.WriteLine("OnChanged事件: " + str);
    }