public void Update(libexeinfo.PE.ResourceNode root) { TreeGridItemCollection treeData = new TreeGridItemCollection(); foreach (libexeinfo.PE.ResourceNode rootChild in root.children) { treeData.Add(GetChildren(rootChild, rootChild.name)); } treeResources.DataStore = treeData; }
static TreeGridItem GetChildren(libexeinfo.PE.ResourceNode node, string type) { string sizeStr = node.data == null ? null : $"{node.data.Length}"; TreeGridItem item = new TreeGridItem { Values = new object[] { $"{node.name}", sizeStr, type, node.data } }; if (node.children == null) { return(item); } foreach (libexeinfo.PE.ResourceNode child in node.children) { item.Children.Add(GetChildren(child, type)); } return(item); }