Datagridview multiselect daten ändern

  • VB.NET

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

    Datagridview multiselect daten ändern

    Hallo zusammen,


    ich habe ein Datagridview das die Datensätze aus einem Dataset bereitstellt.
    Ich habe Multiselect am Datagridview aktiviert. Nun möchte ich den Wert von der 3 Spalte bei allen markierten Datensätze überschreiben und speichern.
    Wie muss ich dabei vorgehen? Ich komm nicht dahinter.

    Gruss
    Brösel68
    Hey @broesel68, deine Beschreibung ist mehr als dürftig, Code fehlt auch völlig.
    Ein Datagridview stellt übrigens keine Daten(sätze) bereit, sondern stellt sie dar, sagt schon der Name des Controls.
    Du schreibst aber nichts, wie die Daten gebunden sind, woher sie kommen. Dataset ist da nicht spezifiziert genug, handelt es sich um ein streng typisiertes, im Designer erstelltes Dataset?
    Wenn ja, dann musst du gar nichts tun, ausser dein Dataset wieder zurückzuschreiben bzw. zu speichern.
    Also alles sehr unklar und mit den wenigen Infos wirds nicht möglich sein dir zu helfen.
    Hallo Dksksm,

    angebunden sind die Daten mit dem Tableadapter und Bindingsource.
    Ich könnte das Feld im Datagridview ändern und dann speichern. Das funktioniert.
    Ich habe in dem Datagridview Aufträge eingelesen, und möchte jetzt alle ausgewählten Datensätze gleichzeitig die Personalnummer, die ich aus einer Combobox auswähle, in die 3. Spalte eintragen und speichern.
    die selectierten Zellen findet man glaub als DGV.SelectedCells.
    zum i-ten Datensatz kommt man mittels

    VB.NET-Quellcode

    1. dim rw = DirectCast(DGV.SelecteCells(i).DataBoundItem,DataRowView).Row
    Gut wäre, du könntest noch den Namen der DataTable angeben, an die das DGV gebunden ist - dann kann ich angeben, wie du typisiert arbeiten kannst.
    ich kann mit folgendem Code alle selektierten Datensätze löschen.

    VB.NET-Quellcode

    1. If AuftraegeDataGridView.SelectedRows.Count > 0 Then
    2. For i As Integer = AuftraegeDataGridView.SelectedRows.Count - 1 To 0 Step -1
    3. AuftraegeDataGridView.Rows.RemoveAt(AuftraegeDataGridView.SelectedRows(i).Index)
    4. Next
    5. Else
    6. MsgBox("Keine Daten zum löschen ausgewählt", MsgBoxStyle.Critical )
    7. End If
    8. Try
    9. Me.Validate()
    10. Me.AuftraegeBindingSource.EndEdit()
    11. Me.TableAdapterManager.UpdateAll(Me.LoginfoDataSet)
    12. Catch ex As Exception
    13. MsgBox(ex.Message)
    14. End Try


    Wie kann ich nun Datensätze ändern?

    Datagridviewname: AuftraegeDataGridView
    Tabellenname: Auftraege

    4 Spalten: Datum | Kunde | Auftragsnummer | Personalnummer

    auf der Form befindet sich eine Combobox, die mit Personalnummern gefüllt ist.

    Ich möchte dort einen Wert auswählen, und in der Datagridview bei allen markierten Datensätze, die Personalnummer in die 4. Spalte eintragen und speichern.