我有一个WPF应用程序,在其中一个视图中我正在使用TreeView。
TreeView结构类似于 父节点>>子节点>>大孩子 。
我已实施拖放功能,以便 Grand Child 节点可以在同一父级的子节点之间拖放 。
我的viewmodel中有一个 ObservableCollection模型类,而TreeView正在通过 ICollectionView (CollectionViewSource.GetDefaultView())使用该ObservableCollection。
每当我在子节点之间移动孙子时,我正在做ICollcetionView.Refresh(),以便我可以看到更新的UI。
现在执行ICollcetionView.Refresh()之后,TreeView不会保持扩展状态。
我希望保持扩展节点,我正在进行drap-drop。
例如,我有,
父母1>>儿童1>> GrandChild 1和 父1>>儿童2>> GrandChild 2。
现在如果我将GrandChild 2移到Child 1之下,那么,
父母1>>孩子1和 父1>>孩子2
即使在ICollectionView.Refresh()之后,仍应保持扩展