У меня есть ListBox в WPF с коллекцией DataBinded Xml. Я установил для SelectionMode значение Extended, чтобы пользователь мог выбрать несколько элементов. У меня есть команда RemoveItem, которая перебирает выбранные элементы и удаляет их из списка:
var selecteditems = this.SelectedItems;
for(int i = 0; i < selecteditems.Count; i++ )
{
ItemBox ouritem = (ItemBox)this.ItemContainerGenerator.ContainerFromItem(this.SelectedItems[i]);
XmlDataProvider prov = this.DataContext as XmlDataProvider;
XmlNode MainNode = prov.Document.SelectSingleNode("//MainNode");
MainNode.RemoveChild(selecteditems[i] as XmlNode);
}
Проблема заключается в том, что после удаления первого элемента выборки выбор очищается и выбирается последний элемент списка.
Как я могу сохранить выбор, с которого я начал, и убедиться, что все элементы удалены?