Ich erstelle eine einfache Anwendung, die es mir ermöglicht, Informationen in einige Textfelder einzugeben und diese nach dem Drücken einer Schaltfläche (Addbtn
) zu einer Zeichenfolge zusammenzufassen. Diese Zeichenfolge würde zu einer Checkbox-Liste mit der Bezeichnung ConcernsChk
hinzugefügt. Wenn eine oder mehrere dieser Zeichenfolgen abgeschlossen sind, würde der Benutzer auf das entsprechende Kontrollkästchen klicken und auf eine Schaltfläche (CompleteSortBtn
) klicken, die diese Zeichenfolge in eine andere Checkbox-Liste überträgt. Das Problem, das ich habe, ist, dass meine Checkbox-Listen-Elemente nicht gemäß ihrem aktivierten Status gelöscht werden. Sie löschen einzeln nacheinander beginnend von oben und nach unten.Durchsuchen von CheckedBoxLists nach aktivierten Kästchen
Hier ist der Code in Frage:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles CompleteSortBtn.Click
Dim Disposition As String = ""
Dim i As Integer
If ConcernsChk.CheckedItems.Count > 0 Then
For i = 0 To (ConcernsChk.Items.Count - 1)
If ConcernsChk.GetItemChecked(i) = True Then
Disposition = ConcernsChk.Items(i)
DispositionChk.Items.Add(Disposition)
ConcernsChk.Items.Remove(Disposition)
End If
Next
Else
MessageBox.Show("Please add Concerns before marking them complete.")
End If
Ich erhalte immer ein Fehler ausgelöst, dass ich nicht gleich 3, und ich habe keine Ahnung, was hier zu tun. Dies wird geworfen, ob es 2 Elemente in der Checkbox-Liste oder 10 gibt.
Lange Rede kurzer Sinn, wenn ich die CompleteSortBtn, möchte ich das Programm zu tun 4 Dinge: 1. Suche durch ConcernChk 2. Suchen Sie die Kontrollkästchen 3. Senden die markierten Kästchen zu DispositionChk 4. Löschen Sie die markierten Elemente aus ConcernChk
Ich entschuldige mich für die lange Post und danke Ihnen für die Hilfe, die Sie geben können.
'Ich bekomme immer einen Fehler geworfen, dass ich nicht gleich 3' Es gibt keine solche Fehlermeldung oder Ausnahme. Bitte lies [Ask] und nimm die [Tour]. – Plutonix
Bitte geben Sie den ** vollen ** Fehler an. – Bugs
Eine nicht behandelte Ausnahme vom Typ 'System.ArgumentOutOfRangeException' ist in System.Windows.Forms.dll aufgetreten. Weitere Informationen: InvalidArgument = Wert von '3' ist nicht gültig für 'Index'. –