Обновление TreeViewer не работает после добавления элемента в TreeViewer, но обновление TreeViewer работает после удаления элемента в TreeViewer.
мое действие удаления / удаления, подобное этому like EntityElement - базовый тип узла дерева:
public void run() {
// TODO Auto-generated method stub
IStructuredSelection selection = (IStructuredSelection) viewSite.getSelectionProvider().getSelection();
Object firstElement = selection.getFirstElement();
if (firstElement instanceof EntityElement) {
EntityElement entityElement = (EntityElement)firstElement;
entityElement.getParent().removeChildren(entityElement);
tv.refresh(entityElement.getParent(), false);
}
}
Мое действие добавления, подобное этому, is объект - это выбранный узел дерева. Объект:
public void run() {
// TODO Auto-generated method stub
if (object instanceof EntityElement) {
EntityElement demoElement = ((EntityElement) object).getChildren().get(0);
((EntityElement) object).getChildren().add(demoElement); //Add its first child by default
Variable.treeViewer.refresh((EntityElement) object);
}
}
}
Я хочу спросить, почему удаление действия работает, но добавление действия не работает?