分层列表
前言
C#实践开发_Winform 系列第五篇:TreeView控件建立学校的分层列表,掌握TreeView控件使用。一、结果呈现
1. 界面设计
窗体界面设计:一个TreeView控件,两个TextBox控件,四个Button按钮。2. 运行结果呈现
二、源码
1.Form.cs
代码如下(示例):
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace test_4_2
{
public partial class Form5 : Form
{
private Boolean textboxHasText = false;//判断输入框是否有文本
public Form5()
{
InitializeComponent();
}
private void Form5_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
TreeNode newNode = new TreeNode(this.textBox1.Text, 0, 1);
this.treeView1.Nodes.Add(newNode);
this.treeView1.Select();
this.textBox1.Text = ""; //提示输入信息
textBox1.Text = "请输入专业";
textBox1.ForeColor = Color.LightGray;
textboxHasText = false;
}
private void button2_Click(object sender, EventArgs e)
{
TreeNode selectedNode = this.treeView1.SelectedNode;
if (selectedNode == null)
{
MessageBox.Show("添加子节点前先选中一个节点", "提示信息");
return;
}
TreeNode newNode = new TreeNode(this.textBox2.Text, 2, 3);
selectedNode.Nodes.Add(newNode);
selectedNode.Expand();
this.treeView1.Select();
this.textBox2.Text = "";
textBox2.Text = "请输入班级";
textBox2.ForeColor = Color.LightGray;
textboxHasText = false;
}
private void button3_Click(object sender, EventArgs e)
{
TreeNode selectedNode = this.treeView1.SelectedNode;
if (selectedNode == null)
{
MessageBox.Show("删除子节点前先选中一个节点", "提示信息");
return;
}
TreeNode parentNode = selectedNode.Parent;
if (Parent == null)
this.treeView1.Nodes.Remove(selectedNode);
else
parentNode.Nodes.Remove(selectedNode);
this.treeView1.Select();
}
private void button4_Click(object sender, EventArgs e)
{
treeView1.Nodes.Clear();
}
private void Textbox1_Enter(object sender, EventArgs e