想要在treeview节点做到右击鼠标显示“删除该好友”这样的效果,不知道怎么捕捉鼠标右击这个事件?e.button之后呢?

解决方案 »

  1.   

    你使用什么技术做UI啊,Winform还是WPF?
      

  2.   

    思路是添加一个ContextMenu,处理MenuItem事件。
      

  3.   

    然后设置 treeview.ContextMenu = this.mnuTree;
    这个mnuTree就是2楼说的ContextMenu
      

  4.   

    1#楼的意思是 vs2008中多了一种叫wpf的东西,类似于winform,但是有些新特性,在winform和wpf中有些是不一样的。感觉楼主的是winform
      

  5.   

    Winform有一个右键的控件。ContextMenuStrip
      

  6.   

    treeview对应的属性ContextMenu添加已经定义好的ContextMenu
      

  7.   

    private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
            {
      if (e.Button == MouseButtons.Right)
                    this.contextMenuStripCollector.Show(this.treeView1, e.X, e.Y);        }        
      

  8.   

    这样子咯使用NodeMouseClick事件没当点击到节点的时候判断是不是右击如果是的主动弹出contextMenuStrip 相对于treeview的位置为X,Y显示就行了
      

  9.   

       /// <summary>
            /// 右键菜单删除按钮事件执行方法
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void toolStripMenuItem1_Click(object sender, EventArgs e)
            {
                TreeNode node = this.treeView1.SelectedNode;
            }        /// <summary>
            /// 鼠标点击树节点事件执行方法
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
            {
                if (e.Button == MouseButtons.Right)
                {
                    this.treeView1.SelectedNode = e.Node;
                }
            }
    看看这个,可能对你有用,谢谢!