Alle abgehackten Checkboxes.texts als msgbox ausgeben???

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von SEX.

    Alle abgehackten Checkboxes.texts als msgbox ausgeben???

    Hey.

    Hab hier 24 Checkboxen.
    Ich will bei Button Klick, dass jedes einzelnes,abgehacktes checkbox.text in einer msgbox ausgegeben werden soll mit Komma-Trennung nach jedem checkbox.text.
    Jedoch ohne 24x If...... .checkstate = checkstate.checked Then sondern ganz einfach und kurz.
    Hatte erstmal so versucht (Ohne Kommatrennung, nur probiert):


    VB.NET-Quellcode

    1. For Each c As CheckBox In Me.Controls
    2. If c.checkstate = checkstate.checked then
    3. MsgBox(c.Text.ToString)
    4. end if
    5. Next

    Jedoch wird die erste Zeile vom code nach einem Button Klick markiert mit folgender Fehlermeldung:
    "Das Objekt des Typs "DevComponents.DotNetBar.TabControl" kann nicht in Typ "System.Windows.Forms.CheckBox" umgewandelt werden."


    Ich benutzte außerdem DotNetBar Controlls in meiner Form aber die Checkboxen sind aus den normalen System.Windows.Forms.Checkbox.
    Weiß nicht wie ich das beheben könnte, oder ob der Code überhaupt stimmt...

    Kann mir jemand bitte helfen?
    THX

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

    Hier:

    VB.NET-Quellcode

    1. Dim msg As String = ""
    2. For Each CheckBox As CheckBox In Me.Controls.OfType(Of CheckBox)()
    3. If CheckBox.Checked = True Then
    4. msg &= CheckBox.Text & ", "
    5. End If
    6. Next
    7. MsgBox(msg)
    Dann bezweifle ich, dass dein restlicher Code bzw. Controls fehlerfrei sind.
    Denn bei mir funktioniert es. Außerdem find ich es fragwürdig 24 Checkboxen auf einer Form zu haben.