/// <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); }
/// <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; }