Tipp 0115 ListBox numerisch sortieren
Autor/Einsender:
Datum:
  Horst Düvel
13.04.2006
Entwicklungsumgebung:   VB.Net 2003
Framework:   1.1
Wenn man Zahlen in einer Listbox sortiert wiedergeben will, so erhält man durch ListBox1.Sorted = True die sogenannte alphanumerische Sortierung, z. B. 1, 10, 2, 20 usw. Will man nun eine numerische Sortierung, 1, 2, 10, 20 usw., so erreicht man das, indem man die Zahlen in ein Array schreibt, dieses sortiert und dann der DataSource-Eigenschaft die Collection übergibt mit
 
ListBox1.DataSource = Arraylist
 
In diesem kleinen Anwendungsbeispiel werden zunächst Zufallszahlen erzeugt und dann numerisch sortiert der ListBox zugewiesen.
 
  Private Sub Button1_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles Button1.Click

    ListBox1.DataSource = Nothing
    al.Clear()

    Dim Aufstellung As New ArrayList

    Dim Liste As Int32
    Dim Zufälle As Int32 = Convert.ToInt32(15)
    Const Zahl As Integer = 199

    If Zufälle > Zahl Then
      MsgBox("Das ist so nicht möglich!!")
      Exit Sub
    End If

    ListBox1.Sorted = False
    Randomize()
    Do Until Aufstellung.Count = Zufälle
      Liste = Zahl * Rnd() + 1
      If Not Aufstellung.Contains(Liste) Then
        Aufstellung.Add(Liste)
      End If
    Loop

    For Each x As Integer In Aufstellung
      al.Add(x)
    Next x

    ListBox1.DataSource = al
  End Sub

  Private Sub Button2_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles Button2.Click

    ListBox1.DataSource = Nothing
    al.Sort()
    ListBox1.DataSource = al
  End Sub
 
Weitere Links zum Thema
ListBox-Einträge verschieben
ListBox-Einträge speichern und einlesen
Mehrspaltige ListBox

Windows-Version
98/SE
ME
NT
2000
XP
Vista
Win 7


Download  (6,6 kB) Downloads bisher: [ 486 ]

Vorheriger Tipp Zum Seitenanfang Nächster Tipp

Startseite | Tipps | Projekte | Tutorials | Bücherecke | VB-/VBA-Tipps | API-Referenz | Komponenten | VB.Net-Forum | VB/VBA-Forum | DirectX-Forum | Foren-Archiv | DirectX | Chat | Spielplatz | Links | Suchen | Stichwortverzeichnis | Feedback | Impressum

Seite empfehlen Bug-Report
Letzte Aktualisierung: Sonntag, 25. Dezember 2011