Checkedlistbox checked items in textbox angeben

  • VB.NET

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

    Checkedlistbox checked items in textbox angeben

    Servus,

    hat wer eine Idee, wie ich alle checked Items einer Checkedlistbox in eine variable als String übergeben kann? habe jetzt schon lange rumprobiert und bin auf nichts sonderlich brauchbares gestoßen und ach ja, die checkedlistbox ist an eine mysql Datenbank angebunden, weshalb ich denke ich einige male diesen Fehler bekommen habe: System.Windows.Forms.CheckedListBox+CheckedItemCollection.

    Danke schonmal :D
    Rosen sind rot, Döner ist lecker, Koaxialkabelverbindungsstecker!
    Indem Du die CheckedItems durchgehst?

    VB.NET-Quellcode

    1. Dim FinalText As New Text.StringBuilder
    2. CheckedListBox1.CheckedItems.Cast(Of String).ForEach(Sub(x) FinalText.AppendLine(x))
    3. MessageBox.Show(FinalText.ToString)
    4. DeineZieltextbox.Text = FinalText.ToString


    oder so:

    VB.NET-Quellcode

    1. Dim FinalText = String.Join(Environment.NewLine, CheckedListBox1.CheckedItems.Cast(Of String))
    2. MessageBox.Show(FinalText)

    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.
    Danke für die Antwort, mit dem ersten code bekomme ich diesen fehler: "ForEach" ist kein Member von "IEnumerable(Of String)"

    und beim zweiten sagt er mir: "Das Objekt des Typs "System.Data.DataRowView" kann nicht in Typ "System.String" umgewandelt werden."
    Rosen sind rot, Döner ist lecker, Koaxialkabelverbindungsstecker!
    Ah, dann war das meine private IEnumerable-Extension :D
    Dann zum DataRowView: da schnappt der berühmt-berüchtigte Doppelcast zu. Du musst erst die Items in ein DataRowView casten, davon die Row nehmen und die dann wiederum in den Objekttyp casten, der in der CheckedListBox reingesteckt wurde.

    VB.NET-Quellcode

    1. Dim FinalText = String.Join(Environment.NewLine, CheckedListBox1.CheckedItems.Cast(Of DataRowView).Select(Function(x) DirectCast(DirectCast(x, DataRowView).Row, DeinObjekttyp).DieObjektProperty))


    Welcher Typ das ist, musst Du selber rausfinden, indem Du an passender Stelle einen Haltepunkt setzt und reinschaust. Also: Haltepunkt setzen, Programm starten und wenn der Compiler am Haltepunkt anhält, in die CheckedItems reinschauen. Bei mir kommt dann bei 1. der Datentyp und bei 2 die Property, die ich anzeigen lassen will.
    Bilder
    • Debug.png

      33,43 kB, 760×372, 97 mal angesehen
    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.