.net中XML转换成TreeView视图

巴扎黑
巴扎黑 原创
2016-12-19 16:33:59 1189浏览
 private static void CreateTree(TreeView treeView, String xmlfile)
        {
            xmlDoc = new XmlDocument();
            xmlDoc.Load(xmlfile); 
            try
            {
                numofChild = 0;
                treeView.Nodes.Clear();
                XmlElement rootXml = xmlDoc.DocumentElement;
                TreeNode root = new TreeNode();
                root.Text = rootXml.Name;
                treeView.Nodes.Add(root);
                if (rootXml.ChildNodes.Count > 0)
                {
                    foreach (XmlNode subXmlnode in rootXml.ChildNodes)
                    {
                        TreeNode treenode = new TreeNode();
                        treenode.Text = "<" + subXmlnode.Name + ">";
                        root.Nodes.Add(treenode);
                        AddNodeToTreeView(subXmlnode.ChildNodes, treenode);
                    }
                }
                else
                {
                    root.Text = rootXml.Value;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        private static void AddNodeToTreeView(XmlNodeList xmlNodeList, TreeNode parentNode)
        {
            foreach (XmlNode xmlnode in xmlNodeList)
            {
                TreeNode subtreenode = new TreeNode();
                subtreenode.Text = "<" + xmlnode.Name + ">";
                parentNode.Nodes.Add(subtreenode);
                if (xmlnode.ChildNodes.Count > 0)
                {
                    AddNodeToTreeView(xmlnode.ChildNodes, subtreenode);
                }
                else
                {
                    subtreenode.Text = xmlnode.Value;
                }
            }           
        }


声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。