Удаление элемента (любым способом) из одного списка, ведет к удалению его же из другого - C#
Формулировка задачи:
Подскажите пожалуйста. Такая проблема. В классе создано два списка объектов. Первый все загруженные с БД объекты, второй хранит выбранные из него. Так вот, удаление элемента(любым способом) из одного списка, ведет к удалению его же из другого.
private static List<Report> testsdata = new List<Report>();
private static List<Report> selectedData = new List<Report> ();
void crt_toggled (object o, ToggledArgs args)
{
TreeIter iter;
try {
if (store.GetIter (out iter, new TreePath (args.Path))) {
int selectedRow = (Convert.ToInt16 (store.GetPath (iter).ToString ()));
if (selectedRow == 0) {
old = (bool)store.GetValue (iter, 0);
if (old == false) {
selectedData = testsdata;
if (store.GetIterFirst (out iter)) {
do {
store.SetValue (iter, 0, true);
} while (store.IterNext (ref iter));
}
} else {
selectedData = new List<Report> ();
if (store.GetIterFirst (out iter)) {
do {
store.SetValue (iter, 0, false);
} while (store.IterNext (ref iter));
}
}
} else {
if (store.GetIter (out iter, new TreePath (args.Path))) {
old = (bool)store.GetValue (iter, 0);
store.SetValue (iter, 0, !old);
}
if (old == false) {
selectedData.Add (testsdata [selectedRow - 1]);
} else {
selectedData.Remove (testsdata[selectedRow - 1]);
}
}
}
} catch (System.Exception ex) {
Сontroller.MessageBox.Show (ex.ToString ());
}
}Решение задачи: «Удаление элемента (любым способом) из одного списка, ведет к удалению его же из другого»
textual
Листинг программы
foreach (Report reporttemp in testsdata) {
selectedData.Add (reporttemp);
}