Bindinglist of (Meine Klasse) sortieren

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Bindinglist of (Meine Klasse) sortieren

    Nabend,

    Weiß jemand wie ich eine Bindinglist(Meine Klasse) nach einer Property sortieren/ordnen ?
    Die Property ist eine Double.

    0,32
    -0,57
    0,78

    Soll so sortiert sein

    0,78
    -0,57
    0,32

    Quasi ohne Vorzeichen abwärts (Math.abs)

    Visual Basic-Quellcode

    1. Imports System.ComponentModel
    2. Public Class Form1
    3. Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    4. Dim BList As New BindingList(Of Testklasse)
    5. BList.Add(New Testklasse With {.Wert = 0.32, .Name = "A"})
    6. BList.Add(New Testklasse With {.Wert = -0.57, .Name = "B"})
    7. BList.Add(New Testklasse With {.Wert = 0.78, .Name = "C"})
    8. ' BList.OrderByDescending(Function(x) Math.Abs(x.Wert))
    9. DataGridView1.DataSource = BList
    10. End Sub
    11. End Class
    12. Public Class Testklasse
    13. Public Property Wert As Double
    14. Public Property Name As String
    15. End Class
    In Arbeit...
    Da würd ich mal sagen: nahe dran. Das Problem ist, dass in Zeile#10 etwas gemacht wird, aber das Ergebnis zurückgegeben wird. Und das verarbeitest Du nicht.
    Korrekt wäre wohl:

    VB.NET-Quellcode

    1. DataGridView1.DataSource = BList.OrderByDescending(Function(x) Math.Abs(x.Wert))

    Denn die Zeile#10 alleine gibt eine sortierte Auflistung wieder.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.