treegrid的数据和tree一样的,你需要写一个扩展把treegrid的loader换成xml loader.当然调试要些时间。你在Google中输入extjs tree xml 搜索,然后借鉴这些方法。

解决方案 »

  1.   

    可以先把xml数据读取出来,这样就是一个table 的形式啦, 再操作就容易多啦
      

  2.   


    有实际扩展过的吗?在tree上边我是使用的Ext.ux.tree.XmlTreeLoader去加载的xml数据,但是若将XmlTreeLoader用在TreeGrid上就不行,无法获得数据。
      

  3.   

    做个中间页将xml转为对应的json格式不多方便,研究ext的treestore有得搞
      

  4.   

    用linq to xml处理下,很方便么
      

  5.   


    showbo版主取巧的办法也是个不错的思路,我有考虑过在后端将xml处理成json。不过,能够直接在loader中直接处理就更好了。
      

  6.   

    你需要分析Ext.ux.tree.TreeGrid和tree的loader机制,不是简单的换过来就行了,如果赶时间就不要搞这个了,后台换成JSON数据, json比xml数据流小得多.exjs主要是用json.
      

  7.   

    本帖最后由 showbo 于 2013-12-13 09:34:46 编辑
      

  8.   


    showbo版主取巧的办法也是个不错的思路,我有考虑过在后端将xml处理成json。不过,能够直接在loader中直接处理就更好了。如果你是ext4+的版本(目测你的是4-以下的,ext4+ treegrid不放在Ext.ux.tree.TreeGrid名字空间下了),可以参考:Ext.data.NodeInterface这个接口,用ext.ajax请求xml文件,然后自己写解析方法,通过这个接口添加数据到treegrid中(Ext4-不知道treegrid提供了什么方法,自己看源代码了。。)
    ext4的demo提供了xml-tree.html的示例,也可以动态加载节点,不过如果使用动态加载,还不如直接动态页处理xml成对应的json来的方便我们产品中还用的ext3.2.0,ext4的方法用不了啊