3

次のようなツリービューがあるとします。

1
|_2
  |_3
  |_4
|_5
  |_6
  |_7

このツリーのレベル 2 にあるすべてのノードからテキストを取得する必要があります。

私がこのようにすると:

List<string> list = new List<string>();
foreach(TreeNode node in treeView1.Nodes[0].Nodes[0].Nodes.Count)
{
       list.Add(node.Text);
}

これにより、最初の 2 つの孫 (3 と 4) のみがキャプチャされますが、6 と 7 はキャプチャされません。親を考慮せずにツリービューのレベルを反復処理する方法はありますか??

4

2 に答える 2

1

まず第一に、@Ahmed KRAIEM のおかげで、@Andrei V からのヒントに基づいて解決したにもかかわらず、彼の方法は効果的です。

私が最終的に使用した解決策はこれでした:

for (int i = 0; i < trv.Nodes[0].Nodes.Count; i++)
            {
                foreach (TreeNode nodo in trv.Nodes[0].Nodes[i].Nodes)
                {
                    ordenes.Add(Convert.ToInt32(nodo.Text));
                }
            }

これにより、レベルのノードも取得されます。

于 2013-10-29T17:26:49.010 に答える