WinForm的TreeView
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowApplication1
{
public partial class Form1 : Form
{
private List<Node> nodes;
public Form1()
{
InitializeComponent();
nodes = getData();
for (int i = 0; i < nodes.Count; i++)
{
if (nodes[i].pid == 0)
{
TreeNode node = new TreeNode(nodes[i].name);
node.Tag = nodes[i].id;
this.treeView1.Nodes.Add(node);
BindChildNode(node);
}
}
}
private void BindChildNode(TreeNode PNode)
{
int Id = (int)PNode.Tag; //父节点ID
for (int i = 0; i < nodes.Count; i++)
{
if (Id == nodes[i].pid)
{
TreeNode node = new TreeNode(nodes[i].name);
node.Tag = nodes[i].id;
PNode.Nodes.Add(node);
BindChildNode(node);
}
}
}
//模拟数据库数据
public List<Node>