void AddTypeNode(ULTypeInfo type) { var ns_list = type.Namespace.Split('.'); ItemCollection lastCollection = treeView.Items; TreeNode parentNode = null; foreach (var n in ns_list) { parentNode = FindChild <TreeNode>(lastCollection, (v) => v.HeaderText == n); if (parentNode == null) { parentNode = new TreeNode(); parentNode.HeaderText = n; lastCollection.Add(parentNode); } lastCollection = parentNode.Items; } var classNode = new TypeNodeItem(type); var bm = new BitmapImage(new Uri("Images/type.png", UriKind.RelativeOrAbsolute)); classNode.Icon = bm; parentNode.Items.Add(classNode); foreach (var m in type.Members) { AddMember(classNode, m); } }
void AddMember(TypeNodeItem node, ULMemberInfo memberInfo) { var classNode = new MemberNodeItem(memberInfo); var bm = new BitmapImage(new Uri("Images/func.png", UriKind.RelativeOrAbsolute)); classNode.Icon = bm; node.Items.Add(classNode); }