关于Treeview控件的多级显示

   

关于Treeview控件的多级显示?

楼主majh1121(majh) 2003-05-23 19:35:20 在 .NET技术 / ASP.NET 提问

调用的生成TreeView的函数:  
  private   void   InitTree(TreeNodeCollection   Nds,string   parentId)  
  {  
  //要using   Microsoft.Web.UI.WebControls;  
  //using   System.Data.SqlClient;  
   
  DataView   dv=new   DataView();  
  Microsoft.Web.UI.WebControls.TreeNode   tmpNd;  
  string   intId;  
  dv.Table=ds.Tables["tree"];  
  dv.RowFilter="MKSUN='"   +   parentId   +   "'";  
  foreach(DataRowView   drv   in   dv)  
  {  
  tmpNd=new   Microsoft.Web.UI.WebControls.TreeNode();  
  tmpNd.ID=drv["MKFATHER"].ToString();  
  tmpNd.Text=drv["MKMC"].ToString();  
  tmpNd.ImageUrl="../images/aa.jpg";  
  tmpNd.NavigateUrl="../aa.jpg";  
  TreeView1.Nodes.Add(tmpNd);  
  intId=drv["MKSUN"].ToString();  
  InitTree(tmpNd.Nodes,tmpNd.ID);  
  }  
  }  
   
   
   
  表及数据:  
  MKFATHER(char[6])     MKMC(char[6])     MKSUN(char[6])  
          1                             aaaa                         0  
          2                             bbbb                         0  
          3                             cccc                         1  
          4                             dddd                         1  
          5                             eeee                         2  
  MKFATHER为唯一标示  
  MKMC为名称  
  MKSUN为父节点  
   
  我调用上面的函数来生成一个多级树,但是生成的始终只有一级,不知道为什么??   
    
 

5 楼pcuser(晚风)回复于 2003-05-24 09:59:52 得分 2

  以下生成树的递归程序供你参考,  
  private   void   initTree(DataSet   ds,TreeNodeCollection   nodes,string   parentid)  
  {  
  DataView   myView=new   DataView();  
  TreeNode   tmdND;  
  myView.Table=ds.Tables["tree"];  
  foreach(DataRowView   drv   in   myView)  
  {  
  tmdND=new   TreeNode();  
  tmdND.ID=drv[Request.QueryString["nodeid"]].ToString();  
  tmdND.Text=drv[Request.QueryString["nodename"]].ToString();  
  nodes.Add(tmdND);  
  initTree(ds,tmdND.Nodes,tmdND.ID);  
  }  
  }

6 楼majh1121(majh)回复于 2003-05-24 10:28:13 得分 0

pcuser(晚风)    
  我在生成第一级时tmdND.ID=drv[Request.QueryString["nodeid"]].ToString();报错,说是key值不能为空?为什么呢?Top

7 楼cloud_scorpion(cloud_scorpion)回复于 2003-05-26 10:05:36 得分 14

Nds.Add(tmpNd);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值