none
Percorrer todos os nós de uma Treeview C# RRS feed

  • Pergunta

  • Eu preciso percorrer todos os nós de um Treeview (nós pais e filhos).

    COMO FAZER? DA UMA FORÇA AÍ! xD

    Exemplo de Treeview abaixo.

    terça-feira, 14 de junho de 2016 12:57

Respostas

  • Consegui! \o/

    SOLUÇÃO:

    Criar e utilizar uma função recursiva (função que chama ela mesmo):

    public void Pega_Nos_Recursiva(TreeNode oParentNode)
            {
    
                MessageBox.Show(oParentNode.Text);
    
                // Start recursion on all subnodes.
                foreach (TreeNode oSubNode in oParentNode.Nodes)
                {
                    Pega_Nos_Recursiva(oSubNode);
                }
            }

    Depois, chamá-la em dentro de um laço. No caso, o foreach é o mais indicado pois é a estrutura ideal para quando, não se conhece o tamanho da coleção:

     foreach (TreeNode node in tvwMapa.Nodes)
                {
                    Pega_Nos_Recursiva(node);
                } 

    Espero ter ajuda outros, que por ventura, que precisem desta solução assim como eu precisei. 

    Valeu!

    terça-feira, 14 de junho de 2016 14:41