Le tri des nœuds enfants de l'un treeview après le remplissage de l'arborescence en c#, winforms

J'ai du mal à trier les nœuds enfants d'un treeview dans mon winforms programme. Mon treeview est peuplé par quelques fichiers XML et utilise un interne de texte à l'intérieur du xml fichiers comme du Texte, propriété de nœuds (Donc je pense que je ne peux pas les trier avant de les ajouter à l'arborescence, ou si c'est possible, car les fichiers xml sont de grande taille je ne veux pas perdre le processus). Une peuplé treeview dans mon programme ressemble à ceci:

Le tri des nœuds enfants de l'un treeview après le remplissage de l'arborescence en c#, winforms

Comme vous pouvez le deviner, je veux les nœuds enfants de trier les aime (je ne veux pas HBM\D10 à venir après HBM\D1) plutôt que je veux:

    HBM\D1
    HBM\D2
    HBM\D3
etc...

J'ai déjà essayé treeView1.Sort() et l'ajout d'beginUpdate et endUpdate mais je n'avais pas suceess 🙁

Je suis à l'aide .NET 4, des conseils seraient appriciated

ok je sortet à l'aide de Thomas conseils:

    class NodeSorter : IComparer
{
        public int Compare(object x, object y) 
        {         
            TreeNode tx = (TreeNode)x; 
            TreeNode ty = (TreeNode)y;

            if (tx.Text.Length < ty.Text.Length)
            {
                return -1;
            }

            if (tx.Text.Length > ty.Text.Length)
            {
                return 1;
            }

            return 0;
        } 
}

OriginalL'auteur Saeid Yazdani | 2011-04-11