C#的事件驱动机制是什么,如何重写事件委托?事件是在哪个地方触发的?如何给控件添加本来没有的事件委托?.netc#事件

解决方案 »

  1.   

    下面一个例子:protected override void lblTitle_Click(object sender, EventArgs e)
            {
                //调用触发事件的函数
                this.OnTitleColumnSelectEvent(this);
            }        /// <summary>
            /// 当前控件选中事件,用于重置其余同类控件的事件
            /// </summary>
            public event ResetOtherTypeTitleControlNormal TitleColumnSelectEvent;
            /// <summary>
            /// 触发控件选中事件函数
            /// </summary>
            /// <param name="titleColumnCtl">选中的控件</param>
            private void OnTitleColumnSelectEvent(TyteTitleColumnControl titleColumnCtl)
            {
                if (this.TitleColumnSelectEvent != null)
                {
                    this.TitleColumnSelectEvent(titleColumnCtl);
                }
            }
        }    public delegate void ResetOtherTypeTitleControlNormal(TyteTitleColumnControl titleColumnCtl);
      

  2.   

    恩,大致的过程是这样的,我现在就是不太明白事件触发那个部分的内容,为了判断触发的条件有没有满足,我可以用一个while循环,一直判断,但是这样效率很低,或者将触发函数放到一个线程中区,但是这样还是不太好,不知道windows有没有其他的更好的处理机制,Button对象的click事件到底是使用什么形式触发
      

  3.   

    这个,你可以写一个建的WindowsForm项目,填个按钮,双击加个click事件,可以看自动生成的代码和设计代码,估计就明白了虽然,我看了好几遍,因为项目中不常写,也不能确定
      

  4.   


            static void Main()
            {
                ABC abc = new ABC();
                abc.Light += LightLine1;//接灯1线
                abc.Light += LightLine2;//接灯2线            abc.OnLoght();//按一下开关
            }
            static void LightLine1()
            {
                Console.WriteLine("灯1亮了");
            }
            static void LightLine2()
            {
                Console.WriteLine("灯2也亮了");
            }
            public class ABC
            {
                public delegate void OnLightEventHandler();            public event OnLightEventHandler Light;//相当于接线
                public void OnLoght()//相当于开关
                {
                    if (Light != null)
                    {
                        Light();
                    }
                }
            }
      

  5.   

    这个我是知道的,但是windows事件驱动过程中会用到消息,我想知道windows对委托调用是如何通过消息传递给事件处理函数的
      

  6.   

    http://lidongdong8841305.blog.163.com/blog/static/42938374201085113836275/我觉得略有钻牛角尖了
      

  7.   

    是有点,但是我现在确实是要用到这方面的知识,没办法,网上说的都是一些很浅显的东西,智能在csdn上问问了