Exemplo n.º 1
0
        /// <summary>
        ///由MaterialList形成以主版本为跟节点各版本为子节点的树
        /// </summary>
        /// <param name="materials">包含主版本和其他版本的集合</param>
        /// <param name="mainMaterialID">重版本ID</param>
        /// <returns>形成的树</returns>
        private MaterialTreeNode GenerateMaterialVersionTree(MaterialList materials, string mainMaterialID)
        {
            MaterialTreeNode           rootNode = null;
            MaterialTreeNodeCollection materialTreeNodeCollection = new MaterialTreeNodeCollection();

            foreach (Material m in materials)
            {
                if (string.Compare(m.ID, mainMaterialID, true) == 0)
                {
                    rootNode = new MaterialTreeNode(m);
                }
                else if (m.ParentID == mainMaterialID)
                {
                    MaterialTreeNode node = GenerateMaterialVersionTree(materials, m.ID);
                    if (node != null)
                    {
                        materialTreeNodeCollection.Add(node);
                    }
                }
            }

            if (rootNode != null)
            {
                foreach (MaterialTreeNode node in materialTreeNodeCollection)
                {
                    rootNode.Children.Add(node);
                }
            }

            return(rootNode);
        }
Exemplo n.º 2
0
        /// <summary>
        ///由MaterialList形成以主版本为跟节点各版本为子节点的树
        /// </summary>
        /// <param name="materials">包含主版本和其他版本的集合</param>
        /// <param name="mainMaterialID">重版本ID</param>
        /// <returns>形成的树</returns>
        private MaterialTreeNode GenerateMaterialVersionTree(MaterialList materials, string mainMaterialID)
        {
            MaterialTreeNode rootNode = null;
            MaterialTreeNodeCollection materialTreeNodeCollection = new MaterialTreeNodeCollection();

            foreach (Material m in materials)
            {
                if (string.Compare(m.ID, mainMaterialID, true) == 0)
                    rootNode = new MaterialTreeNode(m);
                else if (m.ParentID == mainMaterialID)
                {
                    MaterialTreeNode node = GenerateMaterialVersionTree(materials, m.ID);
                    if (node != null)
                        materialTreeNodeCollection.Add(node);
                }
            }

            if (rootNode != null)
            {
                foreach (MaterialTreeNode node in materialTreeNodeCollection)
                {
                    rootNode.Children.Add(node);
                }
            }

            return rootNode;
        }