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();//折叠所有树节点

}

相关推荐
小羊没烦恼!10 小时前
铁道部新客票系统设计(二)
开发语言·前端·数据库·python·oracle·c#·php
昂好的day11 小时前
VisionMaster 通信模块实战(上):Modbus、TCP 收发、协议组装解析
开发语言·网络·网络协议·tcp/ip·c#
Zucker n14 小时前
英语“论文”语法检查工具
linux·windows
Wang's Blog14 小时前
Java 项目实战: 交友项目 - 黑名单:取消黑名单
java·windows·交友
波力海苔夹心脆67514 小时前
C# 正则表达式零基础入门:从“看得懂“到“会用“
经验分享·后端·mysql·正则表达式·c#
昂好的day16 小时前
VisionMaster(VM) 标定工具详解(上):为什么必须标定 + 九点标定手眼标定
开发语言·数码相机·c#
可爱系程序猿16 小时前
佳能 PIXMA G4770 驱动安装后扫描不到?Windows 11 下分别检查打印与扫描组件
windows·程序人生·电脑
Misnice18 小时前
Python 的数据类型
java·windows·python
小羊没烦恼!21 小时前
深入浅出SQL Server中的死锁
java·开发语言·前端·数据库·后端·spring·c#
2601_962364971 天前
Windows Hello 人脸解锁,指纹和红外摄像头哪个更安全?
windows·安全