none
如何绑定treeview RRS feed

  • 问题

  • A
    ----A1
    --------A11
    --------A12
    ----A2
    --------A21
    --------A22
    --------A23
    ------------A231
    ------------A232

    比如,我可能只显示A11,A12和A2以及他的所有节点。
    因为A11,A12是属于A1,但A1不显示,这时A11,A12要自动放到根节点,就是要这样显示

    A11
    A12
    A2
    ----A21
    ----A22
    ----A23
    --------A231
    --------A232

    问下如何能做到?数据表有记录他的父节点是哪个。

    2010年5月3日 3:07

答案

  • 你好,

    如果你能实现代码递归绑定treeview,那实现你的需求应该没问题。

    在这个基础上,实现更改parentid,然后再绑定一次就可以了。例如上面你可以更改A11的parentid为根目录的id。

    对于你不想显示的东西你可以通过设置其parentid为-1就可以解决了。

    通常我们会设置根的id为0,然后从0开始递归寻找,把所有parentid为0的给找出来,再递归找子节点的子节点。

    参考:

    http://blog.csdn.net/Vhero/archive/2010/03/04/5345771.aspx


    Microsoft Online Community Support
    • 已标记为答案 ogra 2010年5月6日 9:20
    2010年5月6日 2:20
  • 详细可以参考我在ASP.NET下递归实现的菜单树,思路和方法,数据库设计都是一样的。

    http://www.cnblogs.com/beniao/archive/2009/04/15/1436540.html

     

    希望可以帮助你,上连接的文章中介绍的是死方法,如果要灵活的配置树根据不同的情况有不同的方案。


    BLOG:http://beniao.cnblogs.com MSN:beniao@live.cn
    • 已标记为答案 ogra 2010年5月6日 9:20
    2010年5月6日 7:49

全部回复

  • 只要有关系什么事都好办,你要实现的功能主要就是一个逻辑的计算,多加几个if判断就可以的。


    BLOG:http://beniao.cnblogs.com MSN:beniao@live.cn
    2010年5月4日 9:36
  • 表的结构无非就是这样 ID,Title,ParentID
    2010年5月4日 12:36
  • 你好,

    如果你能实现代码递归绑定treeview,那实现你的需求应该没问题。

    在这个基础上,实现更改parentid,然后再绑定一次就可以了。例如上面你可以更改A11的parentid为根目录的id。

    对于你不想显示的东西你可以通过设置其parentid为-1就可以解决了。

    通常我们会设置根的id为0,然后从0开始递归寻找,把所有parentid为0的给找出来,再递归找子节点的子节点。

    参考:

    http://blog.csdn.net/Vhero/archive/2010/03/04/5345771.aspx


    Microsoft Online Community Support
    • 已标记为答案 ogra 2010年5月6日 9:20
    2010年5月6日 2:20
  • 详细可以参考我在ASP.NET下递归实现的菜单树,思路和方法,数据库设计都是一样的。

    http://www.cnblogs.com/beniao/archive/2009/04/15/1436540.html

     

    希望可以帮助你,上连接的文章中介绍的是死方法,如果要灵活的配置树根据不同的情况有不同的方案。


    BLOG:http://beniao.cnblogs.com MSN:beniao@live.cn
    • 已标记为答案 ogra 2010年5月6日 9:20
    2010年5月6日 7:49