Einträge im Listenfeld löschen (funktioniert nicht richtig)
-
Hi
Ich versuche wie folgt die selektieren Einträge eines Listenfelds zu löschen.
for (int i=0;i < c_Namen.GetCount();i++) { if (c_Namen.GetSel( i ) > 0) { c_Namen.DeleteString(i); } }
Leider werden nicht alle Einträge gelöscht! z.B die doppelten bleiben erhalten.
Aber auch andere werden nicht gelöscht (welche nur 1x enthalten sind)
Kann mir jemand sagen, was falsch ist und wie ich es richtig mache?
p.S Im Listenfeld können mehrere Einträge selektiert werden...
-
das ist nur logik
du ließt die liste von vorne ein. das heißt du löscht einen eintrag, also wird die liste verschoben. also werden werte übersprungen.beispiel (ein array):
[wert1][wert2][wert3] ... [wert10] ^ wird gelöscht.
dann sieht es so aus:
[wert1][wert3] ... [wert10]
der nächste wert währe dann an der position 2. da aber wert 1 gelöscht worden ist, befindet sich wert3 an stelle 2
du musst sie rückwärts einlesen !!
-
Suchst du vieleicht:
myListbox.ResetContent();
???
-
Doppelpost...