Изменение значения узла дерева - PullRequest
1 голос
/ 21 сентября 2010

Привет всем, я написал код для перемещения файла с исходного пути на новый путь, это работало нормально.

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

        Root
          |->C:\some.txt(Assume that it is in c drive)

Теперь, если я щелкну на нем правой кнопкой мыши, у меня появится контекстное меню с опциями Переместить и некоторые другие. Если я выберу движение, я буду просить пользователя изменить путь. Если пользователь выбирает путь, я перемещаю файл в выбранное место назначения. Теперь мне нужно заменить текущего дочернего элемента дерева на новый путь.

Как изначально файл mt был в c: если я переместил его в D:

У меня должно быть дерево как

          Root
            |->D:\some.txt

1 Ответ

2 голосов
/ 21 сентября 2010

Добавьте переменную-член к вашей форме как:

private Point location; 

Добавьте обработчик к событию MouseDown на TreeView как:

private void treeView1_MouseDown(object sender, MouseEventArgs e)
{
    location = e.Location;
}

В обработчике событиядля события щелчка меню перемещения сделайте что-то вроде:

TreeViewHitTestInfo info =  treeView1.HitTest(location);
info.Node.Text = "new path";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...