C#——TreeView控件使用
说明
本文主要介绍TreeView的使用。
TreeView
树视图(TreeView)控件以树的方式显示集合,可以显示层次关系。
Nodes属性
该属性用于设计TreeView控件的节点。
具体方法
在TreeView的属性栏找到Nodes,点击 …,弹出“TreeNode编辑器”窗口。
“添加根”按钮可以为TreeView控件添加根结点,添加根结点后,“添加子级”按钮变为可用。
ImageList属性
用于设置从中获取图像的ImageList控件,该属性的设置必须与ImageList控件相配合。
Scrollable属性
用于指示当TreeView控件包含多个节点,无法全部可视时确定是否使用滚动条,有true和false两个值。
ShowLines属性
用于指示是否在同级别节点以及父节点与子节点之间显示连线。有true和false两个值。
ShowPlusMinus属性
用于指示是否在父节点旁边显示“+/-”按钮。有true和false两个值。
ShowRootLines属性
用于指示是否在根结点之间显示连线。有true和false两个值。
SelectedNode属性
用于获取或设置TreeView控件中被选中的节点。
AfterSelect事件
TreeView控件最常用的事件为AfterSelect事件,当更改TreeView控件中选定的内容时触发该事件。
案例
要求
使用TreeView控件,建立一个学校的分层视图,实现添加、删除功能。
具体实现
首先建立应用程序用户界面:向设计窗体中加入TreeView控件、TextBox控件、Button控件;从工具箱向窗体拖放一个ImageList控件,添加四张图片;设置TreeView的ImageList属性为ImageList1。
核心代码
添加节点
private void btnAddChild_Click(object sender, EventArgs e)
{
TreeNode selectedNode = this.treeView1.SelectedNode;
if (selectedNode == null)
{
MessageBox.Show("添加子节点之前必须选中一个节点", "提示信息");
return;
}
TreeNode newNode = new TreeNode(this.txtChild.Text, 2, 3);
selectedNode.Nodes.Add(newNode);
selectedNode.Expand();
this.treeView1.Select();
}
删除节点
private void btnDelete_Click(object sender, EventArgs e)
{
TreeNode selectedNode = this.treeView1.SelectedNode;
if (selectedNode == null)
{
MessageBox.Show("删除节点之前必须选中一个节点", "提示信息");
return;
}
TreeNode parentNode = selectedNode.Parent;
if (parentNode == null)
this.treeView1.Nodes.Remove(selectedNode);
else
parentNode.Nodes.Remove(selectedNode);
this.treeView1.Select();
}
运行结果
添加节点
提示弹窗
完整代码
下载地址: