Example #1
0
        public IList <IXmlDocumentElement> GetChildNodes(IXmlDocumentElement parent)
        {
            List <IXmlDocumentElement> result = new List <IXmlDocumentElement>();
            XmlNode folder = this.NavigateToPath(parent.CurrentPath);

            foreach (XmlNode child in folder.ChildNodes)
            {
                result.Add(new XmlDocumentElement()
                {
                    ElementType   = child.Name,
                    CurrentPath   = parent.CurrentPath + @"\" + parent.NameAttribute,
                    HasChildNodes = child.HasChildNodes,
                    NameAttribute = ((XmlElement)child).GetAttribute(NODE_NAME_ATTRIBUTE)
                });
            }
            return(result);
        }
Example #2
0
        private static List <FileViewModel> CreateViewModels(IXmlDocumentElement folder)
        {
            var result        = new List <FileViewModel>();
            var childElements = docReader.GetChildNodes(folder);

            foreach (IXmlDocumentElement element in childElements)
            {
                if (element.ElementType.Equals("Folder"))
                {
                    result.Add(new FolderViewModel()
                    {
                        Name = element.NameAttribute, Path = folder.CurrentPath, HasUnrealizedChildren = element.HasChildNodes
                    });
                }
                else
                {
                    result.Add(new FileViewModel()
                    {
                        Name = element.NameAttribute, Icon = GetFileIcon(element.CurrentPath)
                    });
                }
            }
            return(result);
        }