有一棵树ID是tree1,跟节点是:“中国”,二级子节点比如有若干个“安徽”、“广东”、“浙江”等,每个二级子节点下面又有城市的名称作为三级子节点,例如“浙江”下面有“杭州”、“宁波”等。问题是:怎么获取指定二级子节点下的三级子节点的TEXT值,并保存到数组中,记住,不是选中状态下(SelectedNode)的获取哦,比如我现在想获取“浙江”下的所有子节点的值,怎么编码

解决方案 »

  1.   

    你这个是哪里的需求
    如果是在控件上的话该控件应该会提供获取子节点的方法的
    如果是自己写的一个东西的话,就要看你的数据结构了
    如果是存List里面:他的层级关系是靠Node属性来标志的话  直接获取Node的值即可
    如果是用pid之类的方式来构成的话也只需要List.Find(查询子点解的pid即可)不知道LZ有没有理解
      

  2.   

    6楼说的是这个意思,我用的是ASP.NET自带的树形控件,这个功能要怎么实现才行
      

  3.   


            string UserLanguagePath = Server.MapPath("");//文件路径
            if (File.Exists(UserLanguagePath))
            {
                XmlDocument XmlDoc = new XmlDocument();
                XmlDoc.Load(UserLanguagePath);
                if (XmlDoc.HasChildNodes)
                {
                    XmlNode root = XmlDoc.DocumentElement;
                    XmlNode xmlchild = root.SelectSingleNode("节点名称");
                    if (xmlchild.HasChildNodes)
                    {
                        //XmlNodeList subMenu = xmlchild.SelectNodes("节点名称");
                        XmlAttribute nameAttr;
                        XmlAttribute columnAttr;
                        foreach (XmlNode node in xmlchild)
                        {
                            nameAttr = node.Attributes["Name"];
                            columnAttr = node.Attributes["Column"];
                            if (nameAttr != null)
                            {
                                cName = Convert.ToString(nameAttr.Value);
                            }
                            else
                            {
                                cName = string.Empty;
                            }
                            if (columnAttr != null)
                            {
                                cColumn = Convert.ToString(columnAttr.Value);
                            }
                            else
                            {
                                cColumn = string.Empty;
                            }
                            if (!string.IsNullOrEmpty(cName))
                            {
                                if (!headerList.ContainsKey(cName))
                                {
                                    headerList.Add(cName, cColumn);
                                }
                            }
                        }
                    }
                }
            }LZ修改下代码试试!