Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Удаление узла одного или несколько из XML


Автор: vinograd2008 5.2.2012, 20:57
Здравствуйте. В ListBox добавляю элементы с помощью метода Add. И в зависимости от того какой выделен item в listbox нужно удалять элемент в xml с текстом выделенного itema в listboxе если выделена два элемента и более то удалять оба, если выделен один то только один тот который выделен. Как это сделать?

 Исходный XML

Код


<?xml version="1.0" encoding="utf-8"?>
<Root>
<Statya>
<Razdel>Математика</Razdel>
<Razdel>Философия</Razdel>
</Statya>
</Root>



Сейчас удаляет все элементы, если делаю через SelectSingleNode тоже самое то только первый элемент Razdel

Код


  System.Collections.ArrayList selected = new System.Collections.ArrayList(listBox.SelectedItems);
            foreach (Object selectedItem in selected)
            {
 
xmldocument.Load(filexml);
 
XmlNode node1 = xmldocument.SelectSingleNode("//Root/Statya");
 
XmlNodeList node2 = xmldocument.SelectNodes("//Root/Statya/Razdel");
 
for (int i = 0; i < node2.Count; i++)
 {
                            node2[i].InnerText = selectedItem.ToString();
 
                            node1.RemoveChild(node2[i]);
 
                            listBox.Items.Remove(selectedItem);
 
                            xmldocument.Save(filexml);
 }
}


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)