TreeView的各个修订版本

技术点:先在页面加一个缓存(目的:第一次触发节点后,此节点的数据就加到缓存了,
        下次这个节点下的数据就不需要从数据库读取了<%@ OutputCache具体缓存知识以后再写)(采纳董老师的建议)

FirstEditon

  1.加载页面都时候,加载所有0级和所有1级节点
  2.点击一个0级节点都时候,加载此0级节点下所有1级节点的2级节点
  3.代码

FirstEditon

FirstReviseEdition(感觉这个性能是最好的)    
      1.页面加载的时候,加载所有0级节点 同时每个0级节点下加载"一条"数据(这条数据可以是任意的,
        不一定要从数据库查询,node.ChildNodes.Add(new TreeNode());
      2.同样,点击一个0级节点的时候,加载所有1级节点 同时每个1级节点下加载"一条"数据
      3.代码

FirstReviseEdition

SecondReviseEdition

      1.在上次改进的基础上,加一个判断,原先是:在页面加载的时候,加载所有0级子节点,同时每个0级节点下加
        载 "一条"数据,现在在加载"一条"数据的前面加一个判断,是否这个0级节点有子节点,如果哪个0级节点下没
        有子节点,则它前面没有加号
      2.疑问:这次在上一个版本上加了一次查询和判断,不知道会不会对性能有很大的影响
      3.代码

SecondReviseEdition

ThirdReviseEdition
      1.在cs代码中,为了把AddNode()和AddChildNodes()两个方法统一,又多加了一个跟节点(中国各地区信息)
      2.代码

ThirdReviseEdition

如果要自己练习写的话,可以看下面的DIY

自己DIY这个树

代码下载:http://www.namipan.com/downfile/TreeView_xiao.rar/4e7885e56d549074d9d6a5b7bbdad98b5fd56ded5c710200

你可能感兴趣的:(treeview)