CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

思归大哥: 一个数据库填充treeview的问题,郁闷好久,快来帮忙!!!!!!其它高手来一样有给高分!!!!!!

楼主xinghuo8888(星火)2005-08-01 17:43:27 在 .NET技术 / ASP.NET 提问

在调试时,提示如下:  
    CS1595:   已在多处定义“Microsoft.Web.UI.WebControls.TreeView”;使用“c:\WINNT\assembly\GAC\Microsoft.Web.UI.WebControls\1.0.2.226__31bf3856ad364e35\Microsoft.Web.UI.WebControls.dll”中的定义  
   
  源错误:  
  行   79:                    
  行   80:                   private   System.Web.UI.Control   __BuildControltvMenu()   {  
  行   81:                           Microsoft.Web.UI.WebControls.TreeView   __ctrl;  
  行   82:                            
  行   83:                           #line   15   "http://localhost/itWorkstate/menu_left.aspx"  
     
   
  源文件:   c:\WINNT\Microsoft.NET\Framework\v1.1.4322\Temporary   ASP.NET   Files\itworkstate\309d965f\fe8517e7\uzwlcxsx.0.cs         行:   81    
   
   
  但是,我用静态的方法做个树型导航是没有问题的,为什么在数据库填充时出现这个问题?      
  请高手指点!!!!!!!!  
  问题点数:100、回复次数:4Top

1 楼taoheping(红风)回复于 2005-08-01 17:44:48 得分 0

你要达到什么样的目的了?Top

2 楼taoheping(红风)回复于 2005-08-01 17:46:26 得分 10

这是本人最近写的一个类,你看看,或许有些帮助  
                  '树形相关操作类  
                  Public   Class   FasTree  
   
  #Region   "变     量     定     义"  
   
                          Private   m_dt   As   DataTable  
                          Private   m_RootNode   As   New   TreeNode  
                          Private   m_Node   As   New   TreeNode  
                          Private   m_FindText   As   String  
                          Private   m_blnNode   As   Boolean  
   
  #End   Region  
                          '  
  #Region   "对     外     接     口"  
   
                          '加载数据到树形中  
                          Public   Function   ShowTree(ByVal   dt   As   DataTable,   Optional   ByVal   blnMore   As   Boolean   =   False)   As   TreeNode  
                                  If   dt   Is   Nothing   Then  
                                          Return   m_RootNode  
                                  End   If  
   
                                  m_dt   =   dt  
                                  AddTree(0,   Nothing,   blnMore)  
                                  m_RootNode.Expanded   =   True  
                                  ShowTree   =   m_RootNode  
                          End   Function  
   
                          '从一个树中查找所对应的字符串,返回节点  
                          Public   Function   FindNode(ByVal   trNodes   As   TreeNodeCollection,   ByVal   FindText   As   String)   As   TreeNode  
   
                                  m_blnNode   =   False  
                                  m_FindText   =   FindText  
                                  FindNode(trNodes)  
                                  FindNode   =   m_Node  
   
                          End   Function  
   
                          '说明函数  
                          Public   Function   Note()   As   String  
                                  '说明信息  
                                  Note   =   "需要注意的几点:"   &   vbCrLf   &   _  
                                                  "1、传过来的数据源必须是DataTable类型"   &   vbCrLf   &   _  
                                                  "2、数据集中须包含ID   ParentID   MSG字段"   &   vbCrLf   &   _  
                                                  "       ID:                 结点ID号"   &   vbCrLf   &   _  
                                                  "       ParentID:     父结点ID号"   &   vbCrLf   &   _  
                                                  "       MSG:               需要显示的信息"   &   vbCrLf  
   
                          End   Function  
   
  #End   Region  
   
  #Region   "私用方法或函数"  
   
                          '查找节点  
                          Private   Sub   FindNode(ByVal   trNodes   As   TreeNodeCollection)  
                                  Dim   dt   As   TreeNode  
   
                                  For   Each   dt   In   trNodes  
                                          If   m_blnNode   =   True   Then  
                                                  Exit   For  
                                          End   If  
                                          If   dt.Text   =   m_FindText   Then  
                                                  m_Node   =   dt  
                                                  m_blnNode   =   True  
                                                  Exit   Sub  
                                          End   If  
                                          If   dt.Nodes.Count   <>   0   Then  
                                                  FindNode(dt.Nodes)  
                                          End   If  
                                  Next  
   
                          End   Sub  
   
                          '添加节点  
                          Private   Sub   AddTree(ByVal   ParentID   As   String,   ByVal   pNode   As   TreeNode,   Optional   ByVal   blnMore   As   Boolean   =   False)  
                                  '递归添加树的节点  
   
                                  Dim   dvTree   As   New   DataView  
   
                                  dvTree   =   New   DataView(m_dt)  
   
                                  '过滤ParentID,得到当前的所有子节点  
                                  dvTree.RowFilter   =   "ParentId   =   "   +   ParentID.ToString  
                                  Dim   Row   As   DataRowView  
   
                                  For   Each   Row   In   dvTree  
                                          Dim   Node   As   New   TreeNode  
                                          If   pNode   Is   Nothing   Then     '判断是否根节点  
                                                  ''添加根节点  
                                                  Node.Text   =   Row("msg").ToString()  
                                                  Node.Target   =   Row("Tag").ToString()  
                                                  m_RootNode.Nodes.Add(Node)  
                                                  Node.Expanded   =   True  
                                                  If   blnMore   =   True   Then  
                                                          Node.CheckBox   =   True  
                                                  End   If  
   
                                                  ''再次递归  
                                                  AddTree(Row("ID").ToString(),   Node,   blnMore)  
                                          Else  
                                                  '添加当前节点的子节点  
                                                  Node.Text   =   Row("msg").ToString()  
                                                  Node.Target   =   Row("Tag").ToString()  
                                                  pNode.Nodes.Add(Node)  
                                                  Node.Expanded   =   True  
                                                  If   blnMore   =   True   Then  
                                                          Node.CheckBox   =   True  
                                                  End   If  
                                                  '再次递归  
                                                  AddTree(Row("ID").ToString(),   Node,   blnMore)  
                                          End   If  
                                  Next  
   
                          End   Sub  
   
  #End   Region  
   
                  End   ClassTop

3 楼net_lover(【孟子E章】)回复于 2005-08-01 17:48:45 得分 90

http://www.15seconds.com/issue/030827.htmTop

4 楼xinghuo8888(星火)回复于 2005-08-01 18:08:12 得分 0

我现在想应该是环境的问题!!!!!Top

相关问题

  • 今日无事,过来给思归大哥和孟子大哥上柱香!
  • 思归大哥:有关命名空间的使用
  • 思归大哥请进,上次未完问题
  • 动态控件问题-思归大哥帮忙
  • 思归大哥请进,谢谢你!(http://community.csdn.net/Expert/topic/3725/3725676.xml?temp=.1150324)
  • 谁能?孟子、思归等大哥帮忙哟(winform方式)
  • module 和 assembly 的区别 请思归大哥明示
  • 思归大哥,高手救我!!!很急,关于URL重写!!
  • 思归大哥!您如何学计算机英语……
  • 请思归大哥再指点指点(很难的问题)

关键词

  • 节点
  • microsoft
  • blnmore
  • rootnode
  • 递归
  • findnode
  • dvtree
  • addtree
  • node
  • findtext

得分解答快速导航

  • 帖主:xinghuo8888
  • taoheping
  • net_lover

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo