I have the following problem that I can not solve, I'm trying to create a treeview view based on data contained in the following xml:
<folder id="1" name="folder1" />
<folder id="2" name="folder2" />
<folder id="3" name="folder3" />
<folder id="4" name="folder4" />
<folder id="5" name="folder5" />
<folder id="6" name="folder6" parent_id="2"/>
<folder id="7" name="folder7" parent_id="3"/>
<folder id="8" name="folder8" parent_id="6"/>
<folder id="9" name="folder9" parent_id="5"/>
the code I used was :
public void Folder()
{
XmlDocument dom = new XmlDocument();
XmlNodeList xmlnode;
dom.Load(xmlPath);
xmlnode = dom.GetElementsByTagName("folder");
string FolderName;
int? ParentFolder;
int FolderID;
string _subnode;
treeView2.Nodes.Clear();
foreach(XmlNode node in xmlnode)
{
FolderName = GetAttributeText(node, "name");
FolderID = Int32.Parse(GetAttributeText(node,"id"));
ParentFolder = ParseNullableInt(GetAttributeText(node, "parent_id"));
TreeNode subnode = new TreeNode(FolderName);
TreeNode treeNode = new TreeNode(FolderName);
if (ParentFolder.HasValue)
{
treeView2.Nodes[(int)ParentFolder].Nodes.Add("Cartelle", FolderName);
}
else
{
treeView2.Nodes.Add(treeNode);
}
the problem is that if a child is a child of a knot I am found to be mistaken, and I do not risk creating a child-child