class class1 : ContextMenuStrip
{
     private ToolStripMenuItem scproperties= new ToolStripMenuItem();     public Class1()
    {  this.Items.Add(scproperties);}
   
     
}form1     private void xxx(object sender,EventArgs e)
    {
        .....
     }
想让scproperties的click绑定form1的xxx事件,怎么弄?谢谢

解决方案 »

  1.   

    Private Sub Form5_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.ClickHandles 写成你的click
      

  2.   

    你这样只能绑定form的public static事件
      

  3.   

    还没玩过vs2005.不知ToolStripMenuItem 的click的事件委托是如何定义的。就用伪代码说明一下。
    在class1中:
    定义本身的click事件(因为scproperties是private的,所以不可以直接将方法绑定到scproperties的click事件上)
    scproperties的click事件()
    {
      if(click!=null)
      {
         触发class1的click事件
      }
    }
    在Form1中:
    给class1的click事件附加xx方法就行了。
      

  4.   

    to:MyLf(不睡觉的鱼) ( ) 信誉:100 如何在Form1中:
    给class1的click事件附加xx方法就行了。
    我的初衷是动态添加的class1所以才定义的它,动态的话就不好在form1中给它附加方法了啊?
      

  5.   

    你首先需要定义这个事件,例如:public delegate void ClickHandler(object sender,EventArgs e)---in your control class
    public ClickHandler myClickHandler;----in your form
    yourConObject.ClickHandler = new ClickHandler( xxx );
      

  6.   


    to:Knight94(愚翁) ( ) 信誉:110 class1是动态添加到form里的,如何定义
    class1.ClickHandle = ....
      

  7.   

    Sorry!----in your form
    yourConObject.myClickHandler = new ClickHandler( xxx );
      

  8.   

    完整地说一次吧,之前没讲清楚,不要意思为了减少在窗体中的代码量和重复控制,我重写了一个右键菜单,然后重写了一个TreeNode,然后把菜单和TreeNode的ContextMenuStrip绑定,然后再根据需要将此TreeNode添加到窗体的treeview里去,现在问题就是呢如何在重写的右键菜单里对窗体的TreeView进行操作,比如删除treeview中选中的treenode之类的操作
      

  9.   

    to 为了减少在窗体中的代码量和重复控制,我重写了一个右键菜单,然后重写了一个TreeNode,然后把菜单和TreeNode的 ContextMenuStrip绑定,然后再根据需要将此TreeNode添加到窗体的treeview里去,现在问题就是呢如何在重写的右键菜单里对窗体的TreeView进行操作,比如删除treeview中选中的treenode之类的操作我不太清楚你的ContextMenuStrip是怎么写的,但是就.net自带的来说,实现你上面的功能完全没有什么问题。具体步骤如下:
    在treeview的mousedown event中,给ContextMenu进行加载menuitem,同时给每个menuitem绑定click事件,然后把处理好的ContextMenu绑定到treeview上;这样下来,我在点击ContextMenu某一项的时候,会触发我新绑定的事件处理。
      

  10.   

    ok,成功搞定,谢谢CCTV,谢谢MTV,谢谢Knight94(愚翁)