Как удалить два TreeNode одновременно

У меня есть TreeView, и я хочу удалить 2 его узла одновременно.

node.Remove();

Это удалит узел, но после этого кода будет автоматически выбран следующий узел. Есть ли способ предотвратить это? Или лучше для меня будет удалить следующий узел сразу после удаления его предыдущего узла.

Вы можете спросить почему. В моей программе каждая пара узлов необходима для выполнения чего-либо. поэтому, если я удалю один из них, элемент управления TreeView перейдет к следующему члену этой пары, и, поскольку последний элемент удален, все мои коды будут работать неправильно, так как он больше не сможет найти этот узел.

Пожалуйста, дайте мне знать, если вам нужно больше информации.

2 ответа

Решение

Хорошо, мне повезло... Тексты моих узлов заканчиваются на "_1" и "_2" для каждой пары узлов, поэтому я пришел к следующему решению:

            if (fileText.EndsWith("_1"))
            {
                selectedFile.NextNode.Remove();
                selectedFile.Remove();
            }
            else
            {
                selectedFile.PrevNode.Remove();
                selectedFile.Remove();
            }

С простым представлением дерева и простым контекстным меню это работает для меня

if (tvwACH.SelectedNode.Text == "Child")
{
  tvwACH.SelectedNode.NextNode.Remove();
  tvwACH.SelectedNode.Remove();
}
Другие вопросы по тегам