use tempTest
go
create table Category
(
AutoId int primary key identity(1,1),
Names nvarchar(200) not null,
PId int ,
depth int,
statusVaue int ,
Priority int ,
)
private void bindTreeView1()
{
string sql = @"SELECT [AutoId]
,[Names]
,[PId]
,[depth]
,[statusVaue]
,[Priority]
FROM [Business].[dbo].[Category]";
DataTable dt = beans.getDataTable(sql);//db.ExecuteDataTable(sql, CommandType.Text, null);
DataRow[] dr = dt.Select("Pid is null"); //root 节点
for (int i = 0; i < dr.Length; i++)
{
TreeNode tn = new TreeNode();
tn.Text = dr[i]["Names"].ToString();//root 节点文本
tn.Tag = dr[i]["AutoId"].ToString(); //root 节点ID
FillTree(tn, dt);
treeView1.Nodes.Add(tn);
}
}
private void FillTree(TreeNode node, DataTable dt)
{
DataRow[] drr = dt.Select("PId='" + node.Tag.ToString() + "'");
if (drr.Length > 0)
{
for (int i = 0; i < drr.Length; i++)
{
TreeNode tnn = new TreeNode();
tnn.Text = drr[i]["Names"].ToString();
tnn.Tag = drr[i]["AutoId"].ToString();
if (drr[i]["PId"].ToString() == node.Tag.ToString())
{
FillTree(tnn, dt);
}
node.Nodes.Add(tnn);
}
}
}
treeview 的一点用法
最新推荐文章于 2022-03-20 16:54:00 发布