Blad podczas usowania opcji z Listbox

0

Podczas usowania jednej opcji z Listbox, zmienia sie pozycja (Count) innych.
Pruba usuniecia pozostalych opcji konczy sie bledem.
Jak ustalic Count ?
private void checkBox4_CheckedChanged(object sender, EventArgs e)
{

        if (checkBox4.Checked)
        {
            checkBox4.Tag = listBox1.Items.Add(checkBox4.Text); 
        }
        else
           listBox1.Items.Remove(listBox1.Items[Convert.ToInt32(checkBox4.Tag)]);
    }
0

Count to nie pozycja tylko liczba elementów w liście
MessageBox.Show(listBox1.Items.Count.ToString());

0

nie przechowuj w tagu indeksu, tylko np. numer checkboksa.

0
klaudia295 napisał(a)

Ustalenie tego mi nie pomaga

Ale dokładnie o to pytałaś.
Może napisz więcej co chcesz osiągnąć

0

Pewnie masz w TAG-ach checkboxów indeksy na liście. I przykładowo masz np 5 elementów na twojej liście.Np Tag na 3 opcji jest równy 2 co jest równoznaczne z elementem o indexie 2 na liście. Ale jak odzanczysz 1 opcję lista ci się przenumeruje, czyli jak odznaczysz 5 opcję wysypie ci się ponieważ index który był równy 4 po usunięcie elementu 1 jest równy teraz 3. Chyba logiczne? Trochę zakręciłem ale da się zrozumieć

1 użytkowników online, w tym zalogowanych: 0, gości: 1