zoukankan      html  css  js  c++  java
  • 递归加载Treelist树

    public partial class Form2 : Form
    {
      List<TreeNodeClass> tnclist;
      public Form2()
      {
        InitializeComponent();
        LoadXml();
      }

      void GetChildNode(XmlNodeList nodeList, List<TreeNodeClass> treeList, System.Guid parentID)
      {
        System.Guid curparentID = new Guid();
        foreach (XmlNode childNode in nodeList)
        {
          switch ((childNode).Name)
          {
            case "Neutral":
                  TreeNodeClass treeNode = new TreeNodeClass();
                     treeNode.ID = System.Guid.NewGuid();
                  treeNode.ParentID = parentID;
                  treeNode.NodeName = childNode.SelectSingleNode("Actor.Name").Attributes[0].Value;
                  treeList.Add(treeNode);
                  curparentID = treeNode.ID;
                  break;
             case "CLitAssyGroup":
                  GetChildNode(childNode.ChildNodes, treeList, curparentID);
                  break;
            case "CLitActorMesh":
                  GetChildNode(childNode.ChildNodes, treeList, curparentID);
                  break;
            default:
                  break;
          }
        }
      }

      void LoadXml()
      {
        tnclist = new List<TreeNodeClass>();
        XmlDocument doc = new XmlDocument();
        doc.Load(System.Environment.CurrentDirectory + @"SGS-SD.smgXml");
        XmlNodeList root = doc.SelectNodes("//Server[@Type="CLitServerModifiable"]/CLitAssyRoot/Neutral/Actor.Name");
        TreeNodeClass treeNode = new TreeNodeClass();
        treeNode.ID = System.Guid.NewGuid();
        treeNode.ParentID = System.Guid.NewGuid();
        treeNode.NodeName = root[0].Attributes["Value"].Value;
        tnclist.Add(treeNode);
        XmlNodeList nodelist = doc.SelectNodes("//Server[@Type="CLitServerModifiable"]/CLitAssyRoot/CLitAssyGroup");
        System.Guid curparentID = treeNode.ID;
        foreach (XmlNode node in nodelist)
        {
          GetChildNode(node.ChildNodes, tnclist, curparentID);
        }
        treeList2.DataSource = tnclist;
      }

    }

    public class TreeNodeClass
    {

      public System.Guid ID { get; set; }
      public System.Guid ParentID { get; set; }
      public string NodeName { get; set; }

    }

    You can reach me by surfing the web ---- huntjobs.cn,or sending e-mails to me,Here is my qq MailBox:1424870395@qq.com
  • 相关阅读:
    关于Web应用开发流程的总结
    package.json的所有配置项及其用法,你都熟悉么
    curl 命令行工具的使用及命令参数说明
    pytest插件探索——hook开发
    浅探前端图片优化
    使用Flask构建一个Web应用
    原生的js实现jsonp的跨域封装
    CSS定位之BFC背后的神奇原理
    webview错误
    Android 中的webview
  • 原文地址:https://www.cnblogs.com/HedgehogBlog/p/3672668.html
Copyright © 2011-2022 走看看