自己写的Treeview控件绑定数据源
原创
©著作权归作者所有:来自51CTO博客作者visionsky的原创作品,请联系作者获取转载授权,否则将追究法律责任
首先在数据库中建表,表的格式如下
id name parent_id
代码如下:
/// <summary>
/// 添加根节点
/// </summary>
/// <param name="list">表的所有数据orm的List集合,object为表对应的实体对象</param>
private void AddRootTreeViewNodes(List<
object> list)

{
foreach (Entity.sort s
in list)

{
if(
null==s.parent_id)

{

TreeNode newNode =
new TreeNode(s.name);

newNode.Tag = s.id;

treeView1.Nodes.Add(newNode);

AddChildTreeViewNodes(list, newNode);

}

}

}
/// <summary>
/// 添加子节点
/// </summary>
/// <param name="list">表的所有数据orm的List集合,object为表对应的实体对象</param>
/// <param name="parentTreeViewNode">父节点</param>
private void AddChildTreeViewNodes(List<
object> list, TreeNode parentTreeViewNode)

{
foreach (Entity.sort s
in list)

{
if (s.parent_id==(
int)parentTreeViewNode.Tag)

{

TreeNode newNode =
new TreeNode(s.name);

newNode.Tag = s.id;

parentTreeViewNode.Nodes.Add(newNode);

AddChildTreeViewNodes(list, newNode);

}

}

}
调用函数:

AddRootTreeViewNodes(list);//list为表中所有数据集合