当前位置: 首页 > news >正文

C#TreeView控件应用

1、代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace TestApp
{public partial class MainForm : Form{public MainForm(){InitializeComponent();}private void BtnConfig_Click(object sender, EventArgs e){treeView1.Nodes.Clear();string root = TbRoot.Text;if(Directory.Exists(root) ){TreeNode treeNode = new TreeNode(root);treeView1.Nodes.Add(treeNode);FindDirectory(root, treeNode);}else{MessageBox.Show("输入目录不存在!");TbRoot.Clear();treeView1.Nodes.Clear();}}private void FindDirectory(string root, TreeNode parentNode){try{string[] arr = Directory.GetDirectories(root);if (arr.Length > 0){foreach (string item in arr){string str = Path.GetFileNameWithoutExtension(item);TreeNode node = new TreeNode(str);parentNode.Nodes.Add(node);FindDirectory(item, node);}}}catch (Exception ex){MessageBox.Show(ex.Message);}}TreeNode currentNode = null;private void treeView2_AfterSelect(object sender, TreeViewEventArgs e){currentNode = e.Node;}int i = 0;private void BtnAddNode_Click(object sender, EventArgs e){if (treeView2.Nodes.Count > 0){TreeNode node = new TreeNode($"节点{i++}");currentNode.Parent.Nodes.Add(node);}else{TreeNode node = new TreeNode("首节点");treeView2.Nodes.Add(node);}}private void BtnAddSonNode_Click(object sender, EventArgs e){if (treeView2.Nodes.Count > 0){TreeNode node = new TreeNode($"节点{i++}");currentNode.Nodes.Add(node);}}private void BtnDeleteNode_Click(object sender, EventArgs e){treeView2.Nodes.Remove(currentNode);}}
}

2、运行结果
在这里插入图片描述

相关文章:

C#TreeView控件应用

1、代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms;namespace TestApp…...

计算机网络-数据链路层

基本概念 数据链路和链路 链路:指的是从一个节点到相邻节点的一段物理线路,且中间没有任何其他的交换节点 数据链路:传输数据时,除了一条物理线路,还需要一些必要通信协议来控制这些传输。 数据链路层的三个基本问…...

农场游戏中的时间管理实例

一、准备工作 在Unity中创建承载日期和时间的文本 二、设置游戏的时间戳 using System.Collections; using System.Collections.Generic; using UnityEngine; //标识这个类可以被序列化 [System.Serializable] public class GameTimestamp {// 游戏时间戳的成员变量public in…...

css 数字平铺布局

效果图 <!DOCTYPE html> <html> <head><meta charset"utf-8"><title>活动中心</title><meta name"viewport" content"maximum-scale1.0,minimum-scale1.0,user-scalable0,widthdevice-width,initial-scale1.0…...

【开源】嵌入式Linux(IMX6U)应用层综合项目(2)--智能家居APP

目录 1.简介 1.1功能介绍 1.2技术栈介绍 1.3演示视频 1.4硬件介绍 2.软件设计 2.1智能家居UI设计 2.2.main函数 3.结尾&#xff08;附网盘链接&#xff09; 1.简介 此文章并不是教程&#xff0c;只能当作笔者的学习分享&#xff0c;只会做一些简单的介绍&#xff0c;其…...

CUDA常见编译器配置问题一览

CUDA常见编译器配置问题一览 关注TechLead&#xff0c;复旦博士&#xff0c;分享云服务领域全维度开发技术。拥有10年互联网服务架构、AI产品研发经验、团队管理经验&#xff0c;复旦机器人智能实验室成员&#xff0c;国家级大学生赛事评审专家&#xff0c;发表多篇SCI核心期刊…...

【Android】系统级应用升级后的安装位置

系统级应用的安装位置一般在codePath/system 下面&#xff0c; 如果手动的去进行adb install覆盖安装&#xff0c;通过dumpsys package可以发现是安装在/data/app/里&#xff0c; 如果是通过标准的系统升级方式呢&#xff1f; 这里我们来通过升级查看一下&#xff0c; 升级…...

uniapp 使用renderjs通信

一、 server层向renderjs传值&#xff0c;并初始化renderjs prop&#xff1a;可以随便定义 renderTaskDetail&#xff1a;是传往renderjs的数据 change:prop&#xff1a;prop和必须上面prop字段一样 renderScript.initAmap&#xff1a;【 renderScript】需要renderjs 中scr…...

PostgreSQL 15

一、安装前的准备 1、版本信息 操作系统CentOS 7.9.2009PostgreSQL 版本PostgreSQL 15-15.7 2、下载安装包 RPM Chart - PostgreSQL YUM Repositoryhttps://yum.postgresql.org/rpmchart/进入官网&#xff0c;找到相应版本 点击框选内容 依次进入下载页面&#xff0c;下载相…...

给本地设备搭建一个云端语音助手

概述 本语音助手实现了从关键词唤醒 (KWS) 到语音识别 (ASR) 再到自然语言理解 (NLU) 的完整流程。该系统可以通过监听用户的音频输入,检测指定的关键词,并将用户的语音转换为文本,最后与预设的命令进行匹配,执行相应的操作(具体实现请参考main.py),为你的设备配置远程…...

yolov5车辆类型识别TXT数据集

YOLOV5训练车辆类型识别TXT数据集&#xff0c; 一共1400张图片&#xff0c;共分7个类別&#xff0c; 分别为Bus&#xff0c;Car&#xff0c;SportsCar&#xff0c;MicroBus&#xff0c;Truck&#xff0c;SUV&#xff0c;Jeep是TXT格式的数据集&#xff0c;用LabelImg工具进行标…...

day22(mysql数据库主从搭建)

上午&#xff1a; 1、为mysql添加开机启动chkconfig 2、编辑配置文件my.cnf 3、修改环境变量 4、mysql角色授权 角色不生效 在配置文件中不添加activate_all_roles_on_loginon glibc安装&#xff0c;my.cnf在项目目录之下 rpm安装&#xff0c;my.cnf文件在/etc/my.cnf 5、自…...

返璞归真:通过简化用例来简化用户界面01

Larry Constantine 著harvey 译 我们常被问及精简那些最简化、抽象和通用窗体用例的重要性。到底有多重要呢&#xff1f;在以用户为 中心的设计中&#xff0c;简化那些重要窗体的用例是获得成功的关键。它能够为开发者设计优秀的用户界面 助一臂之力。通过消除不必要的或技术驱…...

书生大模型学习笔记2 - Python

Python实现wordcount 请实现一个wordcount函数&#xff0c;统计英文字符串中每个单词出现的次数。返回一个字典&#xff0c;key为单词&#xff0c;value为对应单词出现的次数。 解题思路&#xff1a;首先把字母转小写>然后把单词取出来去除标点>循环单词列表>key已存…...

JavaScript三级联动jQuery写法

HTML结构 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>三级联动</title><!-- <style…...

无人机挂载抓捕网

一、技术原理与机制 无人机挂载抓捕网装置的技术原理是通过无人机平台的飞行能力和灵活性&#xff0c;结合特制的抓捕网装置&#xff0c;实现对目标的快速、准确抓捕。抓捕网装置在接收到指令后&#xff0c;通过特定机制快速展开并包围目标&#xff0c;从而实现抓捕任务。 二…...

174.地下城游戏——LeetCode

题目 恶魔们抓住了公主并将她关在了地下城 dungeon 的 右下角 。地下城是由 m x n 个房间组成的二维网格。我们英勇的骑士最初被安置在 左上角 的房间里&#xff0c;他必须穿过地下城并通过对抗恶魔来拯救公主。 骑士的初始健康点数为一个正整数。如果他的健康点数在某一时刻…...

登录相关功能的优化【JWT令牌+拦截器+跨域】

登录相关功能的优化 登录后显示当前登录用户el-dropdown: Element - The worlds most popular Vue UI framework <el-dropdown style"float: right; height: 60px; line-height: 60px"><span class"el-dropdown-link" style"color: white;…...

向日葵没有显示器会卡住

前言 有一台机器【ubuntu20】&#xff0c;用于远程开发&#xff0c;使用向日葵时候&#xff0c;如果不接显示器是会卡住的。。。 显示屏是有限的&#xff0c;所以现在解决一下这个问题。 卡在登录界面 双击启动 由于Ubuntu默认显示管理器是gdm&#xff0c;而向日葵使用的是l…...

【机器学习西瓜书学习笔记——聚类】

机器学习西瓜书学习笔记【第九章】 第九章 聚类9.1 聚类任务9.2 性能度量两类指标 9.3距离计算基本性质属性有序属性无序属性 混合距离加权距离 9.4 原型聚类K-MEANS聚类算法步骤优势劣势 学习向量量化高斯混合聚类步骤难点例子EM思想的体现小结 9.5 密度聚类9.6 层次聚类 第九…...

GHelper终极指南:5步解锁华硕笔记本隐藏性能,告别Armoury Crate臃肿

GHelper终极指南&#xff1a;5步解锁华硕笔记本隐藏性能&#xff0c;告别Armoury Crate臃肿 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyr…...

免费开源电路板查看器OpenBoardView终极指南:轻松查看和分析.brd文件

免费开源电路板查看器OpenBoardView终极指南&#xff1a;轻松查看和分析.brd文件 【免费下载链接】OpenBoardView View .brd files 项目地址: https://gitcode.com/gh_mirrors/op/OpenBoardView OpenBoardView是一款功能强大的免费开源电路板文件查看工具&#xff0c;专…...

Fish-Speech 1.5 多语言语音合成实战:如何用 API 快速生成中日语语音(附完整代码示例)

Fish-Speech 1.5 多语言语音合成实战&#xff1a;从API调用到音色定制的完整指南 在数字内容创作和智能交互领域&#xff0c;多语言语音合成技术正成为打破沟通壁垒的关键工具。Fish-Speech 1.5作为新一代开源语音合成引擎&#xff0c;以其出色的多语言支持能力和灵活的API接口…...

kaishi啦啦啦啦

...

终极网页转Markdown工具:MarkDownload高效内容提取全攻略

终极网页转Markdown工具&#xff1a;MarkDownload高效内容提取全攻略 【免费下载链接】markdownload A Firefox and Google Chrome extension to clip websites and download them into a readable markdown file. 项目地址: https://gitcode.com/gh_mirrors/ma/markdownload…...

ICLR 2026 | 复旦上交上科等提出Flash-Mono:10倍加速!单目高斯SLAM首次突破实时瓶颈

击下方卡片&#xff0c;关注「3D视觉工坊」公众号选择星标&#xff0c;干货第一时间送达作者&#xff1a;张子程(授权发布) | 编辑&#xff1a;3D视觉工坊「3D视觉从入门到精通」知识星球(点开有惊喜) &#xff01;星球内有20多门3D视觉系统视频课程、300场顶会讲解、顶会论文最…...

AgentCPM本地知识库增强方案:基于向量数据库的精准信息检索

AgentCPM本地知识库增强方案&#xff1a;基于向量数据库的精准信息检索 你有没有遇到过这样的情况&#xff1f;用大模型写一份行业分析报告&#xff0c;它给出的观点虽然通顺&#xff0c;但总感觉隔靴搔痒&#xff0c;缺乏对行业内部术语、历史数据和特定公司情况的深度洞察。…...

在PyTorch 2.8 环境中运行MATLAB引擎:混合编程实现算法验证

在PyTorch 2.8环境中运行MATLAB引擎&#xff1a;混合编程实现算法验证 1. 引言&#xff1a;当深度学习遇上工程计算 想象一下这个场景&#xff1a;你正在用PyTorch开发一个深度学习模型&#xff0c;需要对输入信号进行复杂的滤波处理&#xff0c;或者要对模型输出进行精细的控…...

AcousticSense AI步骤详解:从原始.wav到ViT输入张量的全流程

AcousticSense AI步骤详解&#xff1a;从原始.wav到ViT输入张量的全流程 1. 引言&#xff1a;让AI用视觉理解音乐 你有没有想过&#xff0c;AI是如何"听懂"音乐的&#xff1f;传统方法让计算机分析音频特征&#xff0c;但AcousticSense AI走了一条完全不同的路——…...

还在手动刷新Elsevier审稿页面?这个免费插件让你一目了然!

还在手动刷新Elsevier审稿页面&#xff1f;这个免费插件让你一目了然&#xff01; 【免费下载链接】Elsevier-Tracker 项目地址: https://gitcode.com/gh_mirrors/el/Elsevier-Tracker 每天打开Elsevier审稿页面&#xff0c;看着那个永远不变的"Under Review"…...