Problem mit dem Sortieren der Daten aus einer Datenbank

  • VB.NET

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

    Problem mit dem Sortieren der Daten aus einer Datenbank

    Hallo,
    Ich habe ein weiteres Problem mit meiner Datenbank bzw. mit dem Sortieren der Daten.
    Ich bin jetzt soweit, dass ich aus meiner Db Daten in eine Listbox anzeigen lassen kann(Nur der Buchtitel). Jetzt wollte ich das nur die Buchtitel die in der Listbox stehen,
    nach bestimmten Werten (Autor,Seitenanzahl) die in der db hinterlegt sind sortiert werden.
    Und da besteht mein Problem bei dem ich absolut nicht weiter komme.
    Ich hoffe ihr könnt mir da weiter helfen.
    It's not a bug, it's a feature
    Hallo mys3lf

    z.B. mit der

    SQL-Abfrage

    1. SELECT Titel, Autor, Seitenzahl FROM BuchDB ORDER BY Seitenzahl


    erhältst du die Datensätze bereits sortiert (hier nach Seitenzahl) im DataSet und kannst anschließend deine Listbox daraus befüllen.

    LG
    Gonzo16
    Das Leuchtet ein, jedoch habe ich die Datensätze bereits ausgelesen und will im nachhinein die datensätze sortieren.
    Wie bekomme ich denn die Daten aus dem Dataset in eine Listbox?
    It's not a bug, it's a feature

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „mys3lf“ ()

    Am besten ist, die DataTable an eine BindingSource zu binden, und die Listbox an die BindingSource.

    "binden" heißt: die DataTable/die BindingSource an die DataSource - Property zuweisen (sowohl Listbox als auch BindingSource haben eine)

    Dann kannst du als Displaymember die DataTable-Spalte festlegen, die in der LB erscheinen soll.

    Über BindingSource.Sort und bindingSource.Filter kannst du Sortierung und Zeilen-Auswahl steuern, und bist dabei nicht auf nur die angezeigten Spalten eingeschränkt.

    Am allerbesten ist, du verwendest ein typisiertes Dataset.
    Dann stehen dir alle Türen offen, vom allereinfachsten: Daten laden, speichern, verarbeiten - bis zu komplexesten Guis: die vier Views (WinForms)