C#Treeview

创建一个Windows应用程序,在默认窗体中添加一个TreeView控件、一个ImageList控件和一个ContextMenuStrip控件,其中,TreeView控件用来显示部门结构,ImageList控件用来存储TreeView控件中用到的图片文件,ContextMenuStrip控件用来作为TreeView控件的快捷菜单

 private void Form1_Load(object sender, EventArgs e)
 {
     treeView1.ContextMenuStrip = contextMenuStrip1;//设置树控件的快捷菜单
     TreeNode TopNode = treeView1.Nodes.Add("公司");//建立一个顶级节点
     //建立4个基础节点,分别表示4个大的部门
     TreeNode ParentNode1 = new TreeNode("人事部");
     TreeNode ParentNode2 = new TreeNode("财务部");
     TreeNode ParentNode3 = new TreeNode("基础部");
     TreeNode ParentNode4 = new TreeNode("软件开发部");
     //将4个基础节点添加到顶级节点中
     TopNode.Nodes.Add(ParentNode1);
     TopNode.Nodes.Add(ParentNode2);
     TopNode.Nodes.Add(ParentNode3);
     TopNode.Nodes.Add(ParentNode4);
     //建立6个子节点,分别表示6个部门
     TreeNode ChildNode1 = new TreeNode("C#部门");
     TreeNode ChildNode2 = new TreeNode("ASP.NET部门");
     TreeNode ChildNode3 = new TreeNode("VB部门");
     TreeNode ChildNode4 = new TreeNode("VC部门");
     TreeNode ChildNode5 = new TreeNode("JAVA部门");
     TreeNode ChildNode6 = new TreeNode("PHP部门");
     //将6个子节点添加到对应的基础节点中
     ParentNode4.Nodes.Add(ChildNode1);
     ParentNode4.Nodes.Add(ChildNode2);
     ParentNode4.Nodes.Add(ChildNode3);
     ParentNode4.Nodes.Add(ChildNode4);
     ParentNode4.Nodes.Add(ChildNode5);
     ParentNode4.Nodes.Add(ChildNode6);
     //设置imageList1控件中显示的图像
     //imageList1.Images.Add(Image.FromFile("1.png"));
     //imageList1.Images.Add(Image.FromFile("2.png"));
     设置treeView1的ImageList属性为imageList1
     //treeView1.ImageList = imageList1;
     //imageList1.ImageSize = new Size(16, 16);
     //设置treeView1控件节点的图标在imageList1控件中的索引是0
     // treeView1.ImageIndex = 0;
     //选择某个节点后显示的图标在imageList1控件中的索引是1
     treeView1.SelectedImageIndex = 1;
 }

 private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
 {
     //在AfterSelect事件中获取控件中选中节点显示的文本
     label1.Text = "选择的部门:" + e.Node.Text;
 }


 private void treeView1_BeforeExpand(object sender, TreeViewCancelEventArgs e)
 {
     treeView1.ExpandAll();//展开所有树节点
 }

 private void treeView1_BeforeCollapse(object sender, TreeViewCancelEventArgs e)
 {
     treeView1.CollapseAll();//折叠所有树节点
 }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/930410.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

pytorch多GPU训练教程

pytorch多GPU训练教程 文章目录 pytorch多GPU训练教程1. Torch 的两种并行化模型封装1.1 DataParallel1.2 DistributedDataParallel 2. 多GPU训练的三种架构组织方式2.2 数据不拆分,模型拆分(Model Parallelism)2.3 数据拆分,模型…

使用el-row和el-col混合table设计栅格化,实现表头自适应宽度,表格高度占位

演示效果: 如上图,由于地址信息很长,需要占多个格子,所以需要错开,若想实现这种混合效果,可以这样搭建: 页面效果: 代码分析: 上面使用el-row和el-col搭建表单显示 第一排三个8,第二排8和16 下面混合table实现,并使用border来自适应宽度…

WPS解决Word文件引入excel对象文件无法打开提示“不能启动此对象...”的问题

一、问题现象 接收到了一份 Word文件,里面引入了一个Excel对象文件,双击时候,wps出现卡顿,过一会之后弹出错误提示:不能启动此对象... 二、解决方法 1.点击WPS左上角图标,并打开右上角设置,萱蕚…

JAVA (Springboot) i18n国际化语言配置

JAVA i18n国际化语言配置 一、简介二、功能三、Java配置国际化步骤四、Java国际化配置工具类五、Spring Boot配置六、测试 一、简介 在Java中,国际化(Internationalization,通常简称为i18n)是一个过程,它允许应用程…

Jenkins 中自定义Build History中显示构建信息

有时候会遇到一个代码仓库下面会有多个不同的分支,而这写分支表示着不同的开发者在开发新的需求,但是这样就会出现一个问题,在Jenkins上进行多分支构建的时候,很难找到哪一个是属于自己分支构建的,这样的问题大家应该都…

springboot安康旅游网站的设计与实现(代码+数据库+LW)

目 录 目 录 摘 要 Abstract 第一章 绪论 1.1 研究现状 1.2 设计原则 1.3 研究内容 第二章 相关技术简介 2.1 JSP技术 2.2 Java技术 2.3 MYSQL数据库 2.4 B/S结构 2.5 Spring Boot框架 第三章 系统分析 3.1可行性分析 3.1.1技术可行性 …

asp.net core过滤器应用

筛选器类型 授权筛选器 授权过滤器是过滤器管道的第一个被执行的过滤器,用于系统授权。一般不会编写自定义的授权过滤器,而是配置授权策略或编写自定义授权策略。简单举个例子。 using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCo…

深入体验c语言中const的多种多样的用法

const是一个C语言(ANSI C)的关键字,它限定一个变量不允许被改变,一定程序上提高程序的安全性和可靠性。虽然这个关键字看起来简单,但是实际上随着它限定位置不一样,产生的效果也各异。 一、const作用 cons…

齐护机器人ModbusRTU RS485转TTL通信模块与ESP32 Arduino通信可Mixly的图形化编程Scratch图形化编程

齐护机器人ModbusRTU RS485-TTL通信模块 一、概念理解 Modbus协议是一种由Modicon公司(现为施耐德电气Schneider Electric)于1979年发表的网络通信协议,旨在实现可编辑逻辑控制器(PLC)之间的通信。 1.1 什么是Mod…

【动手学运动规划】 4.5 A*算法

我宁愿永远做我自己,也不愿成为别人,即使那个人比你更快乐。 —《成为简奥斯汀》 🏰代码及环境配置:请参考 环境配置和代码运行! 4.5.1 概述 Dijkstra算法是基于广度优先搜索策略来遍历空间内的所有节点,最终计算出…

一些引入依赖,提示引入方式报错的问题

背景 当我们使用gulp自动化处理文件的时候,难免会遇到需要按照一定条件过滤的需求,这里博主所遇到问题是,通过文件内容中是否包含 某一串字符串 决定过滤当前的文件 比如: 碰到文件中包含注释 * replace-note 此文件未被引用 ,那…

十二月第二周

作业题: 嵌套循环穷举,先看一道题也是今天作业题: 重点掌握题: 接下来,我们看一下未来要学习的内容:数组 数组基本用法如下: 扩展题:

PyTorch环境迁移指南

在进行深度学习研究和开发时,我们经常需要在不同计算机之间迁移PyTorch环境。无论是更换新设备还是在多台机器间协同工作,都需要确保环境配置的一致性。本文将详细介绍PyTorch环境迁移的完整流程和注意事项。 环境迁移看似简单,实则暗藏玄机。直接复制文件可能会遇到系统差异带…

QGroundControl之4-QGCCorePlugin.cc

介绍 核心控件接口 Core Plugin Interface for QGroundControl 。主要看settingsPages、analyzePages、instrumentPages 等,这里明显看出配置了不同类型toolbar按钮对应的页面 1.MainRootWindow.qml MainRootWindow.qml页面中使用 AppSettings.qml 2.AppSettings.…

tomcat 运行加载机制解析

tomcat 运行加载机制 从tomcat jar包的加载顺序: tomcat的具体运行加载 可以从 start、setclasspath、catalina文件中看出来: start.bat执行 去找bin目录下的catalina.bat,catalina 或去找 bin\setenv.bat以获取标准环境变量,然后去找bin\…

【机器学习 | 基于Lasso回归和随机森林的上海链家二手房房价预测】

文章目录 🏳️‍🌈 1. 导入模块🏳️‍🌈 2. Pandas数据处理2.1 读取数据2.2 查看数据信息2.3 去除重复数据2.4 去除缺失数据2.5 面积、价格、单价、楼层、建筑时间数据提取2.6 朝向数据处理 🏳️‍🌈 3. 特…

npm, yarn, pnpm之间的区别

前言 在现代化的开发中,一个人可能同时开发多个项目,安装的项目越来越多,所随之安装的依赖包也越来越臃肿,而且有时候所安装的速度也很慢,甚至会安装失败。 因此我们就需要去了解一下,我们的包管理器&#…

使用Java将PDF文件解析成Excel文件

安装pom依赖 <!-- 解析pdf--><dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>2.0.27</version> <!-- 请检查并使用最新版本 --></dependency>测试读取pdf文件…

Celery使用小结

介绍 Celery 是异步任务调度工具就&#xff0c;或分布式任务队列&#xff08;Distributed Task Queue&#xff09;&#xff0c;有多个worker。 Broker&#xff1a;中间人&#xff0c;所有任务放在broker中&#xff0c;worker到broker中提取任务执行。 这样系统为开环系统&am…

java注解(二):注解的解析以及应用场景、用注解和反射模拟junit框架代码演示

目录 1、什么是注解的解析&#xff1f; 2、解析注解的案例 1、自定义一个注解 2、在类和方法上使用自己定义的注解 3、解析注解 3、模拟Junit框架案例 1、自定义一个MyTest注解 2、定义一个测试类&#xff0c;使用自定义的注解 3、写一个启动类 本文章主要讲解什么是注…