C#
private void contextMenuStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
         {
             //如何判断是父级还是子级
             if (tnPublic.Tag != null && tnPublic.Tag.ToString() != "")
             {
                 if (tnPublic.Nodes.Count == 0 && int.Parse(tnPublic.Tag.ToString()) != 0)
                 {
                     //是子级
                     if (e.ClickedItem.Text == "添加")
                     {
                         TreeNode tn = new TreeNode();
                         tn.Text = "新建节点";
                         tnPublic.Nodes.Add(tn);
                         tnPublic.ExpandAll();
                         this.TreeContext.LabelEdit = true;
                         tn.BeginEdit();
                         newText
                         //此时节点的新名称保存在newText变量中
                         //界面上添加完之后,需要在数据库里插入一条记录
                         //这边写插入数据库的代码
                         //数据库提交完之后再执行BindTreeView();方法
                     }
                     if (e.ClickedItem.Text == "删除")
                     {
                         int id = int.Parse(tnPublic.Tag.ToString());//保存选中节点的ID,以便用来删除数据库中的记录
                         TreeNode tn = tnPublic.Parent;
                         tn.Nodes.Remove(tnPublic);
                         //在treeview中删除了节点之后,并没有删除数据库中的相应数据,那么在删除完了之后,还需要对数据库里相应的数据进行删除
                         //数据库提交完之后再执行BindTreeView();方法
                     }
                     if (e.ClickedItem.Text == "修改")
                     {
                         this.TreeContext.LabelEdit = true;
                         tnPublic.ExpandAll();
                         tnPublic.BeginEdit();
                         //此时节点的新名称保存在newText变量中
                         //界面上修改完之后,需要对数据库进行相应的更改
                         //数据库里的数据插入完之后
                         //数据库提交完之后再执行BindTreeView();方法
                     }
                 }
                 else
                 {
                     //是父级
                     if (e.ClickedItem.Text == "添加")
                     {
                         TreeNode tn = new TreeNode();
                         tn.Text = "新建节点";
                         tnPublic.Nodes.Add(tn);
                         tnPublic.ExpandAll();
                         this.TreeContext.LabelEdit = true;
                         tn.BeginEdit();
                         //此时节点的新名称保存在newText变量中
                         //界面上添加完之后,需要在数据库里插入一条记录
                         //这边写插入数据库的代码
                         //数据库提交完之后再执行BindTreeView();方法
                     }
                     if (e.ClickedItem.Text == "删除")
                     {
                         int id = int.Parse(tnPublic.Tag.ToString());//保存选中节点的ID,以便用来删除数据库中的记录
                         TreeNode tn = tnPublic.Parent;
                         tn.Nodes.Remove(tnPublic);
                         //在treeview中删除了节点之后,并没有删除数据库中的相应数据,那么在删除完了之后,还需要对数据库里相应的数据进行删除
                         //数据库提交完之后再执行BindTreeView();方法
                     }
                     if (e.ClickedItem.Text == "修改")
                     {
                         this.TreeContext.LabelEdit = true;
                         tnPublic.ExpandAll();
                         tnPublic.BeginEdit();
                         //此时节点的新名称保存在newText变量中
                         //界面上修改完之后,需要对数据库进行相应的更改