Bonjour,
J'ai créé un custom Menu dont les données proviennent d'un XmlDataProvider:
J'aimerais par la suite faire un reset des données pour pouvoir ensuite ajouter des items "manuellement", directement via la propriété Items.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 private XmlDataProvider mDataProvider = new XmlDataProvider(); Binding itemsSourceBinding = new Binding(); itemsSourceBinding.Source = this.mDataProvider; itemsSourceBinding.XPath = "*"; BindingOperations.SetBinding(this, MyMenu.ItemsSourceProperty, itemsSourceBinding);
J'ai essayé en utilisant XmlDocument:
Egalement, en faisant un clear du binding:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 ICollectionView view = (ICollectionView)CollectionViewSource.GetDefaultView(this.ItemsSource); XmlElement element = (XmlElement)view.CurrentItem; XmlDocument doc = element.OwnerDocument; doc.RemoveAll();
Malheureusement, à chaque que j'essaye de modifier Items, j'ai une exception de type "Operation is not valid while ItemsSource is in use. Access and modify elements with ItemsControl.ItemsSource instead."
Code : Sélectionner tout - Visualiser dans une fenêtre à part BindingOperations.ClearBinding(this, MyMenu.ItemsSourceProperty);
Est-ce qu'il existe une solution pour faire un reset "propre" ? Est-ce qu'il faut également faire un reset pour chaque élément du TreeView ?
Merci d'avance.
Partager