1

ここに画像の説明を入力

後ろに移動したい - 「背景」ノードで私としましょう。次に、移動したい:

->backgrounds
->component 6
->components
->assembly 3
->component 5
->component 4
->components
->assembly 2
->component 3
 ... 

誰でも私を助けることができます。

4

2 に答える 2

2

私のコメントは役に立ちましたので、この回答を投稿します。

あなたが望むものは、ポストオーダーで右端のトラバーセルと呼ばれます。次のように再帰的に実行できます。

public void traverse(TreeNode t)
{
    for (int i = t.Nodes.Count-1; i >= 0; i--)
    {
        traverse(t.Nodes[i]);
    }
    /*Do something*/
}

ツリー トラバーサルの方法について詳しくは、ツリートラバーサルをご覧ください。

于 2012-06-13T13:08:38.177 に答える
1

これは組み込みの機能であり、TreeNode.PrevVisibleNodeプロパティを使用できます。このような:

    private void MoveUp_Click(object sender, EventArgs e) {
        var node = treeView1.SelectedNode;
        if (node != null && node.PrevVisibleNode != null) 
            treeView1.SelectedNode = node.PrevVisibleNode;
        treeView1.Focus();
    }
于 2012-06-13T13:47:52.177 に答える