Ich habe wenig Wissen über die Strukturansicht. Ich möchte in der Lage sein, den Baumknoten nach oben zu verschieben und den Baumknoten nach oben zu bewegen.Verschieben Sie TreeNode nach oben, oben, unten und nach unten C#
-Früchte -äpfel -Oranges -Bananas Wassermelone
Unten ist der Code ich versuche haben zu implementieren.
Zuerst bewege ich die Wassermelone nach oben, es funktioniert gut. Als nächstes, wenn ich versuche, Bananen nach oben zu bewegen, wird der Index der Bananen -1 anzeigen. Gibt es noch etwas, was ich falsch mache?
private void moveTopToolStripMenuItem_Click(object sender, EventArgs e)
{
TreeNode tv = new TreeNode();
TreeNode selectedNodeToMove = new TreeNode();
try
{
TreeNode parent = treeView.SelectedNode.Parent;
selectedNodeToMove = treeView.SelectedNode;
if (parent != null)
{
parent.Nodes.Remove(treeView.SelectedNode);
parent.Nodes[0] = selectedNodeToMove;
}
}
catch (Exception ex)
{
}
}
private void moveUpToolStripMenuItem_Click(object sender, EventArgs e)
{
TreeNode tv = new TreeNode();
TreeNode selectedNodeToMove = new TreeNode();
try
{
TreeNode parent = treeView.SelectedNode.Parent;
selectedNodeToMove = treeView.SelectedNode;
if (parent != null)
{
int index = parent.Nodes.IndexOf(treeView.SelectedNode);
if (index > 0)
{
tv = parent.Nodes[index - 1];
parent.Nodes.Remove(treeView.SelectedNode);
parent.Nodes.Remove(tv);
parent.Nodes.Insert(index - 1, selectedNodeToMove);
parent.Nodes.Insert(index, tv);
}
}
}
catch (Exception ex)
{
}
}