2017-01-31 3 views
0

У меня есть XMLnode:Учитывая XmlNode, как удалить элемент из TreeView

XmlNode selectedNode; 

Treeview создается в XAML:

<TreeView Name="OOB" 
<!-- etc.... --> 

Это имеет значение выбранного узла из TreeView:

TreeViewItem treeViewItem = VisualUpwardSearch<TreeViewItem>(e.OriginalSource as DependencyObject) as TreeViewItem; 
     if (treeViewItem != null) 
     { 
      treeViewItem.Focus(); 
      selectedNode = ((XmlNode)treeViewItem.Header); 
//etc... 

И я хочу удалить выбранный узел. Однако, когда я пытаюсь это:

MainWindow.main.OOB.Items.Remove (MainWindow.SelectedNode); 

Это вызывает ошибку во время выполнения:

Operation is not valid while ItemsSource is in use. Access and modify elements with ItemsControl.ItemsSource instead.

Что я делаю неправильно? Каково решение?

ответ

1

Попробуйте это.

if (selectedNode != null) 
    selectedNode.ParentNode.RemoveChild(selectedNode); 
+0

Это трюк! Благодаря! – zetar