师姐给布置了个任务就是,在某一节点树上添加鼠标右键,而师姐他们之前做的是每个节点右键以后都显示鼠标右键
之前是这样
就是每一个节点都显示鼠标右键,而目标是只有一个节点需要添加右键
这是之前的效果,每个节点都有右键,然后师姐让我改成“趋势监控”这一节点有右键
首先先在treeview中添加鼠标事件
事件添加完成以后就是添加代码了,我就直接放代码图了,
private void treeView1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)//判断你点的是不是右键
{
Point ClickPoint = new Point(e.X, e.Y);
TreeNode CurrentNode = treeView1.GetNodeAt(ClickPoint);
if (CurrentNode != null)//判断你点的是不是一个节点
{
treeView1.SelectedNode = CurrentNode;//选中这个节点
if (CurrentNode.Name == "节点1")
{
CurrentNode.ContextMenuStrip = contextMenuStrip1;
}
//switch (CurrentNode.Name)//根据不同节点显示不同的右键菜单,www.jbxue.com
//{
// case "节点1":
// CurrentNode.ContextMenuStrip = contextMenuStrip1;
// break;
// default:
// break;
//}// 这一块是另外一种方法,适用于不同节点添加不同的右键,在这里只添加了一个节点,我就选择了if判断
}
}
}
完成后再看效果
此时智能节点下右键,有菜单
其余节点下右键不显示菜单,此时就实现了,针对某一节点右键添加菜单。
总结 在tree view下添加Mousedown事件 ,双击事件,进入代码,然后添加如上代码就可以了。