建立树的一点小技巧

来源:互联网 发布:成都软件开发外包 编辑:程序博客网 时间:2024/05/16 13:42

string sCity="???";
TreeNode Node1=new TreeNode() ,Node2;
this.ds11.Clear ();
Trv.Nodes.Clear ();
this.Da.Fill (ds11,"Employees");
int i;
bs=this.BindingContext[ds11,"Employees"];
DataRow row;
for(i=0;i<=ds11.Tables["Employees"].Rows.Count -1;i++ )
{
 row=ds11.Tables["Employees"].Rows[i];
 if (sCity!=row["City"].ToString ())
 {
  Node1=Trv.Nodes.Add (row["City"].ToString ());
  sCity=row["City"].ToString ();
  Node1.Tag =i.ToString ();
 }
 Node2=Node1.Nodes.Add (row["LastName"]+"."+row["FirstName"]);
 Node2.Tag =i.ToString ();  
}

两层树的建立,把数据按照第一层节点和主key的顺序排列;先定义一个比较字符串,设定一个
数据库中不可能有的一个数据.用它去匹配数据库中的数据,不一样就建立第一层节点.
具体分析以下:第一条肯定不一样,所以先建立一个第一层节点,然后是对应的第二层节点;
当比较字符串和数据库中取到的数据一样时,不建立第一层节点,只建立第二层节点;不一样是
才建立第一层节点.这样用一条查询语言,一次循环就可以完成了树的建立了.

原创粉丝点击