当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

 ·佳能a60和a70,该买哪个    »显示摘要«
    摘要: 我正犹豫呢 有人说a60的近距和弱光反而比a70好 我是摄影菜鸟,只是一般拍拍人,200万象素是否够呢? 请各位大虾指点小弟 ......
    摘要: oracle中某表的字段设置为number(9),现欲改为varchar2(5),但是库中有很多数据,怎样能保证数据不丢失,把类型改过来? ......


如何用asp.net的树形按件建一个树形列表

最好有代码,如不行,用什么方法实现啊,  
  急

NO.1   作者: FlyingQQ

这是我的一个建树的函数,是直接写的树,因为数据库的原因,所以没有用递归来写,你自己可以试着写递归,库小的话比较快  
  /*   *********************************  
    *   函数名:BuildTree  
    *   功     能:生成Tree  
    *   输     入:安全评价项目库的版本  
    *   输     出:无错,返回tree,出错,返回false  
    *   *********************************/  
  public   bool   BuildTree(ref   Microsoft.Web.UI.WebControls.TreeView   refTreeView,int   EditionID)  
  {  
  try  
  {  
  refTreeView.Nodes.Clear();  
  SqlConnection   myConnection   =   new   SqlConnection(SQLConnectStr());  
  string   SqlCmd   =   "select   *   from   安全评价项目库版本   where   编号="+EditionID+"";  
  SqlDataAdapter   Adapter   =   new   SqlDataAdapter(SqlCmd,myConnection);  
  DataSet   ds   =   new   DataSet();  
  Adapter.Fill(ds,"安全评价项目库版本");  
  DataView   dv   =   new   DataView();  
  dv.Table=ds.Tables["安全评价项目库版本"];  
  Microsoft.Web.UI.WebControls.TreeNode   tmpNd;  
   
  foreach   (DataRowView   drv   in   dv)  
  {  
  tmpNd   =   new   Microsoft.Web.UI.WebControls.TreeNode();  
  tmpNd.ID=drv["编号"].ToString().Trim();  
  tmpNd.Text=drv["版本名称"].ToString().Trim();  
  refTreeView.Nodes.Add(tmpNd);//添加根节点  
  string   SqlCmd_1   =   "select   *   from   安全评价项目库1";  
  SqlDataAdapter   Adapter_1   =   new   SqlDataAdapter(SqlCmd_1   ,   myConnection   );  
  DataSet   ds_1   =   new   DataSet();  
  Adapter_1.Fill(ds_1,"安全评价项目库1");  
  DataView   dv_1   =   new   DataView();  
  dv_1.Table=   ds_1.Tables["安全评价项目库1"];  
  dv_1.RowFilter   =   "上级编号="   +   tmpNd.ID   +   "";  
  Microsoft.Web.UI.WebControls.TreeNode   tmpNd_1;  
  foreach (DataRowView   drv_1   in   dv_1)  
  {  
  tmpNd_1   =   new   Microsoft.Web.UI.WebControls.TreeNode();  
  tmpNd_1.ID   =   drv_1["编号"].ToString().Trim();  
  tmpNd_1.Text=drv_1["序号"].ToString().Trim()+"-"+drv_1["评价项目"].ToString().Trim();  
  tmpNd.Nodes.Add(tmpNd_1);//添加一级节点  
  string   SqlCmd_2   =   "select   *   from   安全评价项目库2";  
  SqlDataAdapter   Adapter_2   =   new   SqlDataAdapter(SqlCmd_2,myConnection);  
  DataSet   ds_2   =   new   DataSet();  
  Adapter_2.Fill(ds_2,"安全评价项目库2");  
  DataView   dv_2   =   new   DataView();  
  dv_2.Table   =   ds_2.Tables["安全评价项目库2"];  
  dv_2.RowFilter="上级编号="   +   tmpNd_1.ID   +"";  
  Microsoft.Web.UI.WebControls.TreeNode   tmpNd_2;  
  foreach   (DataRowView   drv_2   in   dv_2)  
  {  
  tmpNd_2   =   new   Microsoft.Web.UI.WebControls.TreeNode();  
  tmpNd_2.ID   =   drv_2["编号"].ToString().Trim();  
  tmpNd_2.Text=drv_2["序号"].ToString().Trim()+"-"+drv_2["评价项目"].ToString().Trim();  
  tmpNd_1.Nodes.Add(tmpNd_2);//添加二级节点  
  string   SqlCmd_3   =   "select   *   from   安全评价项目库3";  
  SqlDataAdapter   Adapter_3   =   new   SqlDataAdapter(SqlCmd_3,myConnection);  
  DataSet   ds_3   =   new   DataSet();  
  Adapter_3.Fill(ds_3,"安全评价项目库2");  
  DataView   dv_3   =   new   DataView();  
  dv_3.Table   =   ds_3.Tables["安全评价项目库2"];  
  dv_3.RowFilter="上级编号="   +   tmpNd_2.ID   +"";  
  Microsoft.Web.UI.WebControls.TreeNode   tmpNd_3;  
  foreach   (DataRowView   drv_3   in   dv_3)  
  {  
  tmpNd_3   =   new   Microsoft.Web.UI.WebControls.TreeNode();  
  tmpNd_3.ID   =   drv_3["编号"].ToString().Trim();  
  tmpNd_3.Text=drv_3["序号"].ToString().Trim()+"-"+drv_3["评价项目"].ToString().Trim();  
  tmpNd_2.Nodes.Add(tmpNd_3);//添加三级节点  
  }  
  }  
  }  
  }  
  return   true;  
  }  
  catch  
  {  
  return   false;  
  }  
  }

NO.2   作者: ahui_net

我给你发一个,你给我邮件地址

NO.3   作者: seesea125

具体方法是:创建一个数据库,设计树图信息表TREE_INFO,包含NODEID、PARENTID、NODENAME、ADDERSS、ICON字段,其它字段根据实际业务而定,节点名称NODENAME将在树型控件的节点上显示,NODEID字段保存节点的唯一标识号,PARENTID表示当前节点的父节点号,标识号组成了一个“链表”,记录了树上节点的结构。设计一个Web窗体其上放置TreeView控件。  
   
   
       
  Private   Sub   CreateDataSet()’建立数据集    
  Dim   myConn   As   New   SqlConnection()    
  Dim   myCmd   As   New   SqlCommand("select   NODEID,NODENAME,PARENTID,ADDRESS,ICON   from   Tree_info",   myConn)    
  Dim   myDataAdapter   As   New   SqlDataAdapter()    
  myConn.ConnectionString   =   Application("connectstring")    
  myCmd.CommandText   =   ""    
  myCmd.Connection   =   myConn    
  myDataAdapter.SelectCommand   =   myCmd    
  myDataAdapter.Fill(ds,   "tree")    
  End   Sub    
   
   
    建树的基本思路是:从根节点开始递归调用显示子树    
   
   
  Private   Sub   Page_Load(ByVal   sender   As   System.Object,   ByVal   e   As   System.EventArgs)   Handles   MyBase.Load    
  CreateDataSet()    
  intiTree(TreeView1.Nodes,   0)    
  End   Sub    
  Private   Sub   intiTree(ByRef   Nds   As   TreeNodeCollection,   ByVal   parentId   As   Integer)    
  Dim   dv   As   New   DataView()    
  Dim   drv   As   DataRowView    
  Dim   tmpNd   As   TreeNode    
  Dim   intId   As   Integer    
  dv.Table   =   ds.Tables("tree")    
  dv.RowFilter   =   "PARENTID=’"   &   parentId   &   "’"    
  For   Each   drv   In   dv    
  tmpNd   =   New   TreeNode()    
  intId   =   drv("NODE_ID")    
  tmpNd.ID   =   strId    
  tmpNd.Text   =   drv("NODE_NAME   ")    
  tmpNd.ImageUrl   =   drv("ICON").ToString    
  Nds.Add(tmpNd)    
  intiTree(Nds(Nds.Count   -   1).Nodes,   intId)    
  Next    
  End   Sub

NO.4   作者: net_lover

http://msdn.microsoft.com/library/en-us/dnaspp/html/aspnet-usingtreeviewiewebcontrol.asp  
   
  http://www.aspalliance.com/shark/articles/TreeView/TreeViewDoc.aspx

NO.5   作者: yuanylong

http://expert.csdn.net/Expert/topic/2093/2093882.xml?temp=.9390528


    摘要: 要在网站上保存很多张网页的内容,想要利用mysql来保存数据。但网页不但有文字还有很多图,请问应该怎样设计数据库? ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE