请教各位,如何调用toolbar的click事件. private void toolBar1_ButtonClick(object sender, ToolBarButtonClickEventArgs e)
        {
             switch (e.Button.Name)
            {
                case "add":
                 xxxx
                case "edit";
                xxxx
             }
         }现在我要在另一个地方调用这个事件,比如双击listview时,自动调用toolbar的编辑功能.toolBar1_ButtonClick(,) 这里面的两个参数怎么写呢.(要实现edit下的功能)

解决方案 »

  1.   

    这样就可以了。本人建议你把 TOOLBAR 的事件写在外面一个方法中。然后去调用它。在别的控件需要相同功能时去调用你写的哪个方法。
      

  2.   

    谢谢, leinchen(岑声) 会出这个问题呀:Object reference not set to an instance of an object.  e.button.name没有实例呀.请问你是怎么用的呢?不需要传一个e的参数吗?我也想写一个方法.但是用这个方式应该可以实现呀.
      

  3.   

    在listview的双击事件里写:
    { case "edit";
       xxxx}的后面部分不就可以了?或者你写一个专门处理edit的方法,然后两处调用同一个方法不就可以了?
      

  4.   

    //处理双击事件的方法
    private void f_Edit(string id)
    {
       ...
    }在toolbar的事件里:
    case "edit":
    f_Edit(this.listview1.SelectedItem.Tag.ToString());在Listview1的双击事件里:
    Listview1_doubleclick(...)
    {
        f_Edit(this.listview1.FocusedItem.Tag.ToString());
    }
      

  5.   

    谢谢 lovvver(春晖) 你这个方法不错.可以解决问题.但是我的问题是:在别的地方如何调
    toolBar1_ButtonClick,里面的参数怎么写.就是想知道一下这个方法.并不是为了解决我这个实际问题.
      

  6.   

    不用传阐述就可以了。如果非要穿就这样
    private void toolBar1_ButtonClick(object sender, ToolBarButtonClickEventArgs e)sender 是控件对象  用发生时间的控件的 sender.GetHashCode  
    e      是事件      同样用E.GetHashCode  确认是哪个也就是说你可以通过发生时间的控件类型来(某控件的 HASHCODE ) 来确认他在事件里该干什么/