L'ajout de l'enfant à un treenode de façon dynamique en c#

Je veux ajouter dynamiquement certains nœuds enfants d'un nœud racine dans mon TreeView. J'ai une chaîne Array de certains noms comme {"john", "sean", "edwin"} mais il peut être plus grand ou plus petit.

J'ai une racine comme ceci:

        //Main Node (root)
        string newNodeText = "Family 1"
        TreeNode mainNode = new TreeNode(newNodeText, new TreeNode[] { /*HOW TO ADD DYNAMIC CHILDREN FROM ARRAY HERE?!?*/ });
        mainNode.Name = "root";
        mainNode.Tag = "Family 1;

et je suis en train de faire comme ça avec mon tableau des noms des enfants:

        foreach (string item in xml.GetTestNames()) //xml.GetTestNames will return a string array of childs
        {
            TreeNode child = new TreeNode();

            child.Name = item;
            child.Text = item;
            child.Tag = "Child";
            child.NodeFont = new Font(listView1.Font, FontStyle.Regular);
        }

Mais évidemment, il ne fonctionne pas.
ASTUCE: j'ai le nombre d'éléments dans mes enfants tableau!!!!

EDIT 1:

Je suis en train de faire:

        //Make childs
        TreeNode[] tree = new TreeNode[xml.GetTestsNumber()];
        int i = 0;

        foreach (string item in xml.GetTestNames())
        {
            textBox1.AppendText(item);
            tree[i].Name = item;
            tree[i].Text = item;
            tree[i].Tag = "Child";
            tree[i].NodeFont = new Font(listView1.Font, FontStyle.Regular);

            i++;
        }

        //Main Node (root)
        string newNodeText = xml.FileInfo("fileDeviceName") + " [" + fileName + "]"; //Text of a root node will have name of device also
        TreeNode mainNode = new TreeNode(newNodeText, tree);
        mainNode.Name = "root";
        mainNode.Tag = pathToFile;


        //Add the main node and its child to treeView
        treeViewFiles.Nodes.AddRange(new TreeNode[] { mainNode });

Mais cela n'ajoute rien à mon treeView.

OriginalL'auteur Saeid Yazdani | 2011-03-16