Как удалить определенные элементы из listbox, и из xml файла
У меня есть listbox. В нем есть элементы, которые записаны в xml файл (история в браузере). Как сделать чтобы при удалении элементов они удалялись и в listbox и в xml файле.
int hu = 0;
StorageFolder f = ApplicationData.Current.LocalFolder;
StorageFile f1 = await f.CreateFileAsync("History.xml", CreationCollisionOption.OpenIfExists);
List<History> u;
XmlSerializer x = new XmlSerializer(typeof(List<History>));
Stream s = await f1.OpenStreamForReadAsync();
try
{
u = (List<History>)x.Deserialize(s);
}
catch
{
u = new List<History>();
}
historyList.Items.Remove(historyList.SelectedItems);
while (hu < historyList.SelectedItems.Count)
{
foreach (History d in u)
{
if ($"{d.Date} - {d.Url} ({d.Name})" == historyList.SelectedItems[hu].ToString())
{
u.Remove(d);
}
}
}
s.Close();
await f1.DeleteAsync();
StorageFile f2 = await f.CreateFileAsync("History.xml", CreationCollisionOption.OpenIfExists);
Stream s2 = await f2.OpenStreamForWriteAsync();
x.Serialize(s2, u);
s2.Close();