我希望向后移动 - 让我在“背景”节点中说。然后我想搬家:
->backgrounds
->component 6
->components
->assembly 3
->component 5
->component 4
->components
->assembly 2
->component 3
...
谁能帮我。
由于我的评论很有帮助,我发布了这个答案。
您想要的称为后序中的最右遍历。您可以像这样递归地执行此操作:
public void traverse(TreeNode t)
{
for (int i = t.Nodes.Count-1; i >= 0; i--)
{
traverse(t.Nodes[i]);
}
/*Do something*/
}
您可以在此处阅读有关树遍历方法的更多信息:树遍历
这是一个内置功能,您可以使用 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();
}