none
Datarow.Rowstate = Modified schon bei klick auf MoveNextItem? RRS feed

  • Frage

  • Hallo,

    Ich habe ein typisiertes Dataset was ich über ein Bindingsource und den dazugehörigen

    Bindingsourceadapter steuere.

    Nun möchte ich gerne die Änderungen Protokolieren.

    Was ich wie folgt mache :

     Dim rw As List(Of DataRow) = (AVIDataSet.Benutzer.Select(Nothing, Nothing, DataViewRowState.ModifiedOriginal)).ToList
    
            For Each r As AVIDataSet.BenutzerRow In rw
                Lg($"Daten für Benutzer: {r.Name}, {r.Vorname} bearbeitet.")
            Next

    Nun werden die Zeilen aber bereits auf den Status "Modified" gesetzt nur wenn ich sie über den BindingNavigator ansteuere? D.h wenn sie auf dem Fenster (Windows Forms) über die gebundenen Steuerelemente angezeigt werden aber noch nicht bearbeitet wurden. 

    Mache ich da was falsch?


    Gruß

    Daniel

    Montag, 20. Januar 2020 10:04

Antworten

  • Hallo Dimitar,

    sorry, ich wollte nicht unhöfflich erscheinen. Aber leider hat mich der o.g. Tipp nicht weiter gebracht( fehlerhaftes verhalten lies sich dadurch auch nicht beheben. Die Datarows waren danach trotzdem noch im Status "modified".

    Ich habe es schließlich über den umständlichen Weg per Ereignisse in den Steuerelemente gelöst. Darüber hab ich dann leider ganz vergessen eine kurze Response hier zu hinterlassen.

    Trotzdem Danke für die Antwort.

    schönen Abend 

    Daniel

    Montag, 3. Februar 2020 19:37

Alle Antworten

  • Hallo Daniel,

    Ich habe leider nicht herausgefunden, worauf dieses Verhalten zurückzuführen ist, aber in folgendem Thread findest Du eine Problemumgehung mit einer booleschen Variablen. Das Codebeispiel enthält zwar eine "CancelChanges"-Methode, aber die DataRow-Klasse hat CancelEdit und RejectChanges, weshalb ich Dir vorschlagen würde, es mit einer von diesen Methoden anzupassen:
    Why is BindingSource RowState getting set to modified when you change position?

    Fehlverhalten und Bugs kannst Du in der Developer Community melden:
    Developer Community

    Gruß,
    Dimitar


    Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.

    Dienstag, 21. Januar 2020 09:57
    Moderator
  • Hallo Dimitar,

    sorry, ich wollte nicht unhöfflich erscheinen. Aber leider hat mich der o.g. Tipp nicht weiter gebracht( fehlerhaftes verhalten lies sich dadurch auch nicht beheben. Die Datarows waren danach trotzdem noch im Status "modified".

    Ich habe es schließlich über den umständlichen Weg per Ereignisse in den Steuerelemente gelöst. Darüber hab ich dann leider ganz vergessen eine kurze Response hier zu hinterlassen.

    Trotzdem Danke für die Antwort.

    schönen Abend 

    Daniel

    Montag, 3. Februar 2020 19:37