工作中经常用到TreeView控件,绑定响应右键快捷菜单。但经常忘了它的一些用法,几个要注意的点,每次用到都去查,翻看一些资料。于是,整理了一番,记录下来,便于以后随时查阅。

1、界面设计

一个treeview控件,一个ContextMenuScript控件。ContextMenuScript添加一个Item删除

TreeView添加MouseUp事件。Item添加Click事件

2、代码

/// <summary>/// TreeView的MouseUp事件/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void treeView1_MouseUp(object sender, MouseEventArgs e){//根据鼠标在treeview点击的位置获取节点//TreeView控件,SelectNode属性更改只响应左键点击事件。右键点击,按下选择了节点。弹起,选择丢失。//实际工作中,经常需要面对的是右键直接选择,并弹出快捷菜单。故在鼠标弹起时,根据位置,设定SelectNodethis.treeView1.SelectedNode = this.treeView1.GetNodeAt(e.X, e.Y);if (e.Button == MouseButtons.Right)//仅响应右键{//Node.Levle属性,确定是哪一级节点if (this.treeView1.SelectedNode != null && this.treeView1.SelectedNode.Level == 1){//Show两个参数,Control和Point。//this指定相对的控件位置//Point为treeview点击的位置,20是为了显示ContextMenuStript时不遮挡Node,可以看到点击的Nodethis.contextMenuStrip1.Show(this,new Point(e.X+20,e.Y));}}}/// <summary>/// ContextMenuStript选项,toolStripMenuItem点击事件/// 删除/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void toolStripMenuItem_Delete_Click(object sender, EventArgs e){if (this.treeView1.SelectedNode != null){//将选择的节点删除this.treeView1.SelectedNode.Remove();}}

TreeView与ContextMenuStrip相关推荐

  1. Winform编程中的treeview控件

    Winform编程中的treeview控件 treeview基础操作 treeview添加.删除节点操作 treeview节点展开与折叠 treeview节点重命名 treeview获取节点集合并设置 ...

  2. C# 系统应用之ListView实现简单图片浏览器

    最近有同学问我如何使用ListView加载图片列表,前面在"C#系统应用"中TreeView+ListView+ContextMenuStrip控件实现树状图显示磁盘目录,并在Li ...

  3. c#中contextMenuStrip与datagridview使用CellMouseDown事件及treeview使用mousedown事件

    //对于datagridview使用CellMouseDown事件 private void dataGridView_CellMouseDown(object sender, DataGridVie ...

  4. dev treeview控件_在Winform开发框架中使用DevExpress的TreeList和TreeListLookupEdit控件

    DevExpress提供的树形列表控件TreeList和树形下拉列表控件TreeListLookupEdit都是非常强大的一个控件,它和我们传统Winform的TreeView控件使用上有所不同,我一 ...

  5. C# winform treeview node添加右键菜单并选中节点

    2019独角兽企业重金招聘Python工程师标准>>> 转自http://www.cnblogs.com/luluping/archive/2010/03/03/1677206.ht ...

  6. C# 系统应用之ListView控件 (三).添加ContextMenuStrip右键菜单打开删除文件

    在前面讲述过使用TreeView控件和ListView控件显示磁盘目录信息,但仅仅是显示信息是不够的,我们还需要具体的操作.在"个人电脑使用历史痕迹"项目中我还需要添加" ...

  7. C# TreeView基本操作及其节点增,删,改(3级节点)

    TreeView 节点操作: 先选择某一节点: 添加子节点:             TreeNode temp = new TreeNode("name");           ...

  8. php tree view,VB.Net树视图(TreeView)

    树视图(TreeView)控件用于显示与Windows资源管理器左窗格中文件和文件夹的显示方式类似的项目分层表示.每个节点可能包含一个或多个子节点.参见如下控件视图 - 从工具箱中点击一个TreeVi ...

  9. C# TreeView 控件的综合使用方法

    1.概述 该篇文章开发使用的语言c#,环境visualstudio2010,sql数据库.主要内容包括: (1).treeView控件添加根节点.子节点的基本方法,节点的删除. (2).把treeVi ...

最新文章

  1. 从源码带你看懂functools的partial方法
  2. 初等数论--整除--两数乘积保持整除性
  3. python中字符串的几种表达方式(用什么方式表示字符串)
  4. [react] react中可以在render访问refs吗?为什么?
  5. 数组用法以及引用类型和值类型
  6. java+jxls利用excel模版进行导出
  7. linux ipc信号量
  8. 通过Grafana进行监控报警
  9. html对象转换为字符串,如何使用JavaScript将对象转换为字符串?
  10. 2020最新天猫双十一自动获取喵币
  11. 三十天博客计划之《引言》
  12. 北京互联网创业者比上海广州加起来还多!(多图)
  13. poi删除带有合并单元格的行的问题
  14. 概率论复习笔记——条件概率、全概率、贝叶斯公式及其应用
  15. android 大屏幕 清晰度,为什么安卓系统手机都长一个样?无非是大屏幕 ips显示屏 大分辨率 大内存 一样的大平板形状,三个chu传统...
  16. netty内存泄露检测
  17. java mina框架实例_Apache Mina框架实践
  18. 难度较大的微软面试题
  19. 成都领君国土三调数据建库与管理系统总体设计方案
  20. vue+vite+element-plus修改全局主题颜色

热门文章

  1. (五)java项目中的文档转换案例实战——Word转换为PDF
  2. mysql必须加单引号吗_mysql加单引号和不加单引号的性能比较
  3. 友萌君约你来看更懂女人的线上发布会!
  4. 如何快速搭建实用的爬虫管理平台
  5. Java实现 LeetCode 173 二叉搜索树迭代器
  6. Linux内核分析——第一周学习笔记
  7. 学习分享 | 通过C++,python的对比,帮你快速入门python
  8. 前端input属性判断字段不能为空
  9. 自我评估,职业规划及对计算机专业的理解(大三软件工程学生的第一篇博客)
  10. 《什么叫会工作》阅读心得