Inhalt von listBox löschen

meste

Erfahrenes Mitglied
Hi!

Ich möchte den Inahlt von der ListBox Löschen, mit

Code:
        For i As Integer = 1 To lblunsortcount.Text - 2
            ltbSort.Items.Remove(ltbSort.Items.Item(i))
        Next

geht aber leider nicht. In der ListBox sind in etwa 10000 Einträge. Kann mir da jemand behilflich sein. Danke im vorraus

meste
 
Was geht nicht? ;-]
  1. Direkt mit dem Inhalten von Eingabesteuerelementen zu arbeiten ist nonsens.
    Was ist wenn der User nichts eingetragen hat? ;)
    Validiere die Eingabefelder bevor Du den Vorgang startest.
  2. Kann man nicht einfach mit einem String rechnen. Dafür ist es notwendig,
    das man den String erstmal in den gewünschten DatenTyp konvertiert.
  3. Kannst nicht ein Item löschen auf das grad zugegriffen wird. :rolleyes:
    Ich denke mal Du missbrauchst die ItemCollection als Container für die Elemente, oder?
    Das macht keinen Sinn wenn Du mehere löschen willst.
    Speicher also die Elemente in einem Array oder einer richtigen Collection.
    Working with collections in the .NET Framework

    Und keine Angst. Die ItemCollection speichert nur die Referenzen von Klassen.

    Wenn es aber WertTypen sind würd mit dem Property DataSource arbeiten.
    Arrays und Collections sind wiederum ReferenzTypen. ;)
    Wenn die DataSource gesetzt wurde, ist es nicht mehr möglich die Items zu löschen.
    Du müsstest dafür die DataSource löschen. Dein Array/Colletion updaten und wieder dem Property DataSource zuweisen.
  4. Zu deiner aussage "geht aber leider nicht": Ließ dich mal in Exceptions ein. ;)

Wenn alles Validiert wurde kannst es so machen:
//Edit:Sry, hatte in dem For-Statement einen kleinen Fehler drinn
C#:
int minRange = int.Parse( minRangeLabel.Text );
int maxRange = int.Parse( maxRangeLabel.Text );
if ( minRange < maxRange )
	for( int i = minRange; i < maxRange; i++ )
		sortListBox.Items.Remove( myArrayOrCollection[i] );

MfG,
cosmo
 
Zuletzt bearbeitet:
Jungs, Danke, dass es Euch gibt..

Habe mich eben mit jenem Problem auseinandersetzen müssen und die
Lösung ist so einfach.

Danke nochmal..

mfg chmee
 

Neue Beiträge

Zurück