Odstranování položek z kolekce   otázka

C#

Ahoj, mám následující problém:

Ve vlasní kolekci mám položky. Ty po stisknutí tlačítka po jedné odstranuji. Vše funguje jak má, dokud v kolekci není pouze jedna položka. To pak stiknu tlačítko, něco se provede, ale položka v kolekci zůstane. Nevím jestli je problém v kolekci samé nebo v ukládání, ale všechny ostatní jdou bez problému. Poradte prosím

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

A co třeba sem napsat kód, který to provádí?

nahlásit spamnahlásit spam 0 odpovědětodpovědět


        public void DeleteItem(Guid ID)
        {
            this.DeleteItemInSpecificCollection(this.Store.Items, ID);
        }

        public void DeleteItemInSpecificCollection(ItemCollection ItemCollection_, Guid ID)
        {
            foreach (Item Item1 in ItemCollection_)
            {
                if (Item1.ID == ID)
                {
                    ItemCollection_.Remove(Item1);
                    this.Save();
                    return;
                }
                else
                {
                    this.DeleteItemInSpecificCollection(Item1.SubItems, ID);
                }
            }
        }

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Co dělá Remove, Save a jakého typu je ItemCollection máme zjistit odkud? A pojmenovávat proměnné Pascal Casingem s podtržítkem na konci je zrůdnost odporující všem standardům.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

ItemCollection dědí od CollectionBase, a metoda Remove má:

        public void Remove(Item Item_)
        {
            this.List.Remove(Item_);
        }

Metoda save serializuje kolekci pomocí binaryformatter

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ale jak říkám, funguje to u všeho, až na poslední položku, at je jakákoliv

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback