我想手动使事件产生,不知道有办法吗?举个例子当我们在控件上按下鼠标右键时产生MouseDown事件,但是这个需要我们在控件上按下鼠标,如果我想用代码叫出这个控件的MouseDown事件,可以吗?

解决方案 »

  1.   

    直接调用MouseDown的事件处理方法呗。
      

  2.   

    protected override void WndProc(ref Message m)
    消息处理  
    new EventHandler(Form1_MouseClick);
      

  3.   

    发送消息 SendMessage
    直接执行事件
    反射事件
    this.MouseDown += new Delegate .... (Form1.OnMyMouseDown)  
      

  4.   

    另外...“手动使事件产生”和“想用代码叫出这个控件的MouseDown事件”是完全不同的两个概念...前者如果是自定义事件去看看MSDN,了解一下如何触发事件...如果是CLR封装的事件,例如CLR控件的那些事件,需要向系统发Windows消息...
      

  5.   

      我想问,你是要想手动产生这个事件,就是为了能直接使用这个事件里的代码,而不是再重复地写这个事件里的代码一次吗?
      如果是就直接用 对象_事件 的格式调用这个事件里的代码,如Form1_Click就直接调用了窗体1的单击事件了的代码,
      如果不是,可以试一下RaiseEvent语句,用来激活一个事件,格式是:
       RaiseEvent 事件名(参数列表)
    看看吧。行别忘了给分~~