您的位置:首页 > 数据库

根据数据库创建TreeView的方法

2006-04-15 16:32 309 查看
数据库结构 ID int(4) 主键 ParentID int(4) ConText nvchar(50) 均No Null
***********************************************************************
函数说明
public void AddTree(int ParentID, TreeNode pNode,TreeView treeView,DataTable dt)
其中treeView为TreeView控件,dt为数据集中的表。

调用示例:

dt = (DataTable)td.RetiereTree();
AddTree(0, (TreeNode)null,treeView1,dt);

Vs2005 C# WindowsXp 测试通过。
***********************************************************************

public void AddTree(int ParentID, TreeNode pNode,TreeView treeView,DataTable dt)
{

DataView dvTree = new DataView(dt);
//过滤ParentID,得到当前的所有子节点
//dvTree.RowFilter = "[PARENTID] = " + ParentID;
dvTree.RowFilter = "[PARENTID]=" + ParentID;

foreach (DataRowView Row in dvTree)
{

TreeNode Node = new TreeNode();
if (pNode == null)
{ //添加根节点
Node.Text = Row["ConText"].ToString();
treeView.Nodes.Add(Node);
//Node.Expanded = true;
AddTree(Int32.Parse(Row["ID"].ToString()), Node,treeView,dt); //再次递归
}
else
{ //̀添加当前节点的子节点
Node.Text = Row["ConText"].ToString();
pNode.Nodes.Add(Node);
//Node.Expanded = true;
AddTree(Int32.Parse(Row["ID"].ToString()), Node,treeView,dt); //再次递归
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: