刚做过资源库小程序,用到了UltraWebTree ,利用数据库中的数据填充了树,以下是心得。
填充思想:先从表中找到根节点数据,生成节点插入到UltraWebTree中,然后利用递归寻找当前节点的子节点,生成节点,插入。
注意,需要using Infragistics.WebUI.Shared 空间
资源库表结构(两个表category与files):
category(存放资源文件目录列表)

cid cname cfatherid

cid是标示,cname目录名称,cfatherid父目录名称
files(存放fcid对应目录下的文件名称)

fid fname fcid

代码:
Page_Load中

if (!Page.IsPostBack)
   {
    DataTable data= Query.ProcessSql("SELECT cid,cfatherid,cname FROM category",GlobalVar.DBName); 
    this.InitTree(this.UltraWebTree1.Nodes, "0",data); 
   }

GlobalVar.DBName ->数据库名。
Query.ProcessSql  ->我用了听棠的SPL持久层来做的。
对应的InitTree如下:

private void InitTree(Infragistics.WebUI.UltraWebNavigator.Nodes Nds,string cfatherid,DataTable data)
        {
            Infragistics.WebUI.UltraWebNavigator.Node tmpNd;
            DataRow [] rows = data.Select("cfatherid='" + cfatherid + "'");
            foreach(DataRow row in rows)
            {
                tmpNd = new Infragistics.WebUI.UltraWebNavigator.Node();
                tmpNd.DataKey = int.Parse(row["cid"].ToString());
                tmpNd.Text = row["cname"].ToString();
                Nds.Add(tmpNd);
                InitTree(tmpNd.Nodes, tmpNd.DataKey.ToString(),data);
            }
        }

其中Infragistics.WebUI.UltraWebNavigator.Nodes参考Infragistics手册,其实是和MS提供的TREE树控件TreeNodeCollection类相似的。

转载于:https://www.cnblogs.com/zjy/archive/2006/05/17/402398.html

利用数据库来填充UltraWebTree相关推荐

  1. mysql 字段 下拉列表_用数据库表填充下拉列表框

    用数据库表填充下拉列表框 1.引入名称空间 using system.data using System.Data; using System.Data.SqlClient; 2.连接数据库(有多种连 ...

  2. android mysql 搜索功能_android利用数据库实现搜索联想功能

    [实例简介] android利用数据库实现搜索联想功能.主要实现的效果是和google百度搜索一样,实现联想功能. [实例截图] [核心代码] 4e431bd8-d287-4028-8476-7510 ...

  3. Bigdata之sql+mplot:利用数据库信息和基于mplot将信息数据各种可视化(图表+地图+动态图)

    Bigdata之sql+plot:利用数据库信息和基于mplot将信息数据各种可视化 目录 1.图表可视化 1.图表可视化

  4. ThinkPHP利用数据库字段做栏目的无限分类

    一直以来对cms后台的栏目管理不太理解,尤其是子栏目顶级栏目这种关系,通过网上的搜索与自己的摸索,实现方法如下(原理是利用数据库的path字段): 1.建立简单的栏目表: CREATE TABLE ` ...

  5. ctfshow-WEB-web14( 利用数据库读写功能读取网站敏感文件)

    ctf.show WEB模块第14关是一个SQL注入漏洞, 绕过switch循环后可以拿到一个登录界面, 登录界面存在SQL注入, 脱库以后会提示flag在另一个文件中, 利用数据库的文件读写功能读取 ...

  6. matlab gui输入数据库,从数据库值填充Matlab GUI列表框

    我对Matlab的GUI相对比较陌生,并且我使用GUIDE创建了一个简单的GUI.我想连接到一个数据库(已经定义和工作!)并用数据库中的值填充一个列表框,以便用户可以选择使用哪一个(在这种情况下,它们 ...

  7. laravel database.php,php Laravel框架学习(一) 之 建立数据库并填充测试数据

    php Laravel框架学习(一) php Laravel框架学习之Laravel 建立数据库并填充测试数据 建立数据库 前面我们已经明确目标网站的基本功能,现在我们先来建立它的数据库. 设计数据库 ...

  8. 利用asn1c 工具填充CASE消息集-BSM

    利用asn1c 工具填充CASE消息集-BSM   利用asn1c工具填充BSM消息可简单总结如下:   1.使用asn1c工具将CASE53-2017/2019的asn.1源文件解析成*.h和*.c ...

  9. 利用数据库复制技术 实现数据同步更新[摘]

    相关链接: 利用数据库复制技术 实现数据同步更新[摘]        SQL 复制过程的注意事项(转) 复制的概念 Microsoft? SQL Server? 2000 的复制是在数据库之间对数据和 ...

最新文章

  1. git ,报403错误,完美解决方案
  2. dedecms /include/uploadsafe.inc.php SQL Injection Via Local Variable Overriding Vul
  3. 什么是CRM Sales category
  4. [VBS]转换二进制数据为字符串常用办法
  5. java 系列1:数据类型转换
  6. 深入理解卡尔曼滤波算法
  7. oracle用par文件导出dmp文件及导入dmp文件
  8. SVN目录对号图标(更新、冲突)不显示
  9. react中使用高德地图进行定位
  10. python嵌入java,java架构如何嵌入python?Java调用Python程序方法
  11. 解决cmd中文输入法看不到待选文字
  12. android 软引用intent对象,Android中的软引用(SoftRefrerence)和弱引用(WeakReference)
  13. 什么是逻辑卷管理器lvm?lvm设备的管理
  14. 南卫理公会计算机官网,南卫理工会大学
  15. 期货开户手机APP有哪些?
  16. Nuendo 5 v5.1.1 WiN 英文精简版音乐制作软件下载
  17. 用MATLAB进行大地测量学上的子午线弧长计算
  18. 2022-3-25 06.字符串压缩
  19. android auto支持高德地图,【图】苹果新系统:CarPlay终于支持高德地图_汽车之家...
  20. 输出三角形面积和周长

热门文章

  1. 拓展 - WebRTC 多视频网络拓扑之三种架构
  2. 成长的道路上,我很幸运
  3. Oracle 11g常用管理命令(用户、表空间、权限)
  4. C#后台调用前台js(RegisterStartupScript)
  5. 这是我用Microsoft Word 2010 直接发布的测试用博客
  6. Xcode升级插件失效修复快捷方式
  7. tcp 出现rst情况整理
  8. Java == equal
  9. 【笔记】C++自学笔记系列02:类的组合与类的友元
  10. phpexcel常见问题的解决办法