2010-09-21 3 views
1

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

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

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

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

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

Я должен иметь мое дерево, как

  Root 
      |->D:\some.txt 
+0

Вы используете привязки данных или заполнение элементов дерева вручную? –

ответ

2

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

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";