Я работаю над компактным фреймворком 2.0 и использую c #.У меня проблема с повторным выбором узла дерева.Сценарий выглядит так: temp0 temp1 temp2 temp3 У меня есть какой-то узел в виде дерева и использующий стрелки вверх и вниз для перемещения узла вверх и вниз.но проблема в том, что как только я выбираю узел и нажимаю стрелку вверх, узел перемещается вверх, и я не могу выбрать узел чуть ниже этого узла.Предположим, я выбираю temp3 и нажимаю стрелку вверх, этот temp3 заменяется на temp2.например: temp0 temp1 temp3 temp2 после этого я не могу выбрать temp2, но могу выбрать temp3 и другой узел независимо от того, что работает.
Я использую этот код для стрелки вверх:
int paramPos = this.treeView1.SelectedNode.Index;
if (paramPos> 0)
{
System.Windows.Forms.TreeNode tempNode = this.treeView1.SelectedNode;
this.treeView1.Nodes [paramPos] = this.treeView1.Nodes [paramPos - 1];
this.treeView1.Nodes [paramPos - 1] = tempNode;
this.treeView1.SelectedNode = this.treeView1.Nodes [paramPos - 1];
foreach (узел системы.Windows.Forms.TreeNode в узле this.treeView1.Nodes)
{
ArgumentNumberInfo ai = (ArgumentNumberInfo) tnode.Tag;
ai.ArgNo = tnode.Index + 1;
}
treeView1.SelectedNode = tempNode;
this.treeView1_AfterSelect(null, null);
}
}
После нажатия стрелки вверх узел переходит ввверх, но я не могу выбрать узел ниже этого.Node0
node1
node2
node3
Если вы выберете node3 и нажмете стрелку вверх, то node3 поднимется, а node2 опустится, но вы не можетеt выберите узел2.пожалуйста, дайте мне понять, почему это происходит.Спасибо за ваше время.