Value 0 ist für Index ungültig.

  • VB.NET
  • .NET (FX) 4.0

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von C8002.

    Value 0 ist für Index ungültig.

    Hallo!

    In meinem Projekt kann man über den Rechtsklick auf ein ListViewItem ein ContextMenu erscheinen lassen mit mehreren Funktionen.
    Eine davon ist "bearbeiten" bzw "edit".
    Auf einen Click hin wird eine Form gezeigt, in der man die Daten bearbeiten kann.
    Sobald ich aber auf den Button drücke, der das ganze speichert, erhalte ich die im Titel benannte Fehlermeldung.
    Ich verstehe nicht warum das ganze geht, da ich das Item auch löschen kann (mit dem selben Index!). Nur bearbeiten will nicht ganz.

    Hier mein Code:

    VB.NET-Quellcode

    1. 'Rechtsklick
    2. Public Sub TeamMemberBox_MouseClick(sender As Object, e As MouseEventArgs) Handles TeamMemberBox.MouseClick
    3. If e.Button = MouseButtons.Right Then
    4. If TeamMemberBox.FocusedItem.Bounds.Contains(e.Location) = True Then
    5. ListViewOptions.Show(Cursor.Position)
    6. SelectionIndex = TeamMemberBox.SelectedIndices(0) 'SelectionIndex ist eine globale Variable.
    7. End If
    8. End If
    9. 'Bearbeitungsform
    10. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    11. Dim g As New MainWindow
    12. Dim UsedClass As New ListViewControl
    13. g.TeamMemberBox.Items(g.SelectionIndex).Text = TextBox1.Text
    14. g.TeamMemberBox.Items(g.SelectionIndex).SubItems(1).Text = TextBox2.Text
    15. g.TeamMemberBox.Items(g.SelectionIndex).SubItems(2).Text = TextBox3.Text
    16. Me.Hide
    17. End Sub

    (Was der Fehler bedeutet weiss ich, ich weiss halt nur nicht warum das nicht funktioniert!)

    MfG,
    C8002.
    “If debugging is the process of removing software bugs, then programming must be the process of putting them in.”
    -Unbekannt
    Preisfrage: was bewirkt das Schlüsselwort New in zeile #12 ?

    naja - ich sag vor: Es erstellt ein neues MainWindow (deswegen heisst das Schlüsselwort ja so).
    Jo, vermutlich hat die TeamMemberBox in diesem neuen MainWindow keine Items, und was g.SelectedIndex sein soll ist mir ganz schleierhaft - vermutlich hast du Strict Off - odr?

    Dringend empfohlen: Visual Studio - Empfohlene Einstellungen
    @ErfinderDesRades
    *räusper* OK, das ist logisches Denken. So gut bin ich da drin nicht. 8o
    Aber jetzt mal ernsthaft, danke! Hab den Code nochmal überarbeitet (mit Strict On!).
    Plus , die ganze Geschichte mit Strict On werde ich mir für die Zukunft merken.
    “If debugging is the process of removing software bugs, then programming must be the process of putting them in.”
    -Unbekannt