zoukankan      html  css  js  c++  java
  • xml2menu

    代码
    xml2treeviewmenu
    新建menu.xml文件,如下:
    <?xml version="1.0" encoding="utf-8" ?>
    <root>
        
    <folder title='folder 1a' >
            
    <record title='record 1a1' />
            
    <record title='record 1a2' />
            
    <folder title='folder 1b'>
                
    <record title='record 1b1' />
            
    </folder>
        
    </folder>
        
    <folder title='folder 2a' >
            
    <record title='record 2a1' />
        
    </folder>
        
    <folder title='folder 3a' >
            
    <record title='record 3a1' />
            
    <record title='record 3a2' />
        
    </folder>
    </root>
    把TreeView控件命名为:treeViewMenu
    在后台添加命名空间
    using System.Xml;
    using System.Xml.XPath;
    private XmlDocument docXML = new XmlDocument();
    docXML.Load(
    "menu.xml");
    populateBaseNodes();
    private void populateBaseNodes()
    {
        treeViewMenu.Nodes.Clear();
        treeViewMenu.BeginUpdate();
        TreeNode treenode;
        treenod 
    = treeViewMenu.Nodes.Add("Folders");
        
        XmlNodeList baseNodeList 
    = docXML.SelectNodes("root\folder");
        
        
    foreach(XmlNodeList xmlnode in baseNodeList)
        {
            
    string title = xmlnode.Attribute["title"].value;
            treenode 
    = treeviewMenu.Nodes.Add(title);
            populateChildNodes(xmlnode, treenode);
    //子节点
        }
        treeviewMenu.EndUpdate();
        treeviewMenu.Refresh();
    }

    private void populateChildNodes(xmlNode oldXmlnode, TreeNode oldTreenode)
    {
        TreeNode treenode 
    = null;
        XmlNodeList childNodeList 
    = oldXmlnode.ChildNodes;
        
        
    foreach(xmlNode xmlnode in childNodeList)
        {
            
    string title = xmlnode.Attribute["title"].Value;
            treenode 
    = oldTreenode.Nodes.Add(title);
            populateChildNodes(xmlnode, treenode);
        }
    }


  • 相关阅读:
    RecyclerView 数据刷新的几种方式 局部刷新 notify MD
    【图片】批量获取几万张图片
    RV BaseRecyclerViewAdapterHelper 总结 MD
    RecyclerView.ItemDecoration 间隔线
    Kotlin【简介】Android开发 配置 扩展
    Kotlin 特性 语法糖 优势 扩展 高阶 MD
    一个十分简洁实用的MD风格的UI主框架
    折叠伸缩工具栏 CollapsingToolbarLayout
    FloatingActionButton FAB 悬浮按钮
    Glide Picasso Fresco UIL 图片框架 缓存 MD
  • 原文地址:https://www.cnblogs.com/chenqingwei/p/1635211.html
Copyright © 2011-2022 走看看