[C#]Scroll DataGridView

  • Hi, ich arbeite grade mit dem Control "DataGridView" (.NET 3.5)


    Die Einträge im DGV können bearbeitet werden, und müssen dann mit einer externen Datei synchronisiert werden. Ich habe es so gehandhabt, dass die Einträge komplett neu geladen werden, da die Datei auch außerhalb des Programms geändert werden können.


    Da es viele Einträge sein können, ist die Benutzung der Scrollleisten von Nöten -Allerdings wird die Scrollposition durch das Neuladen zurückgesetzt.


    Gibt es eine Möglichkeit, die Einträge neu zu laden, ohne die Scrollposition zu verlieren, bzw. danach die Scrollposition wiederherzustellen? Ich habe keine Eigenschaft/Funktion gefunden, um das Control an eine bestimmte Position scrollen zu lassen.

  • du könntest die Position des Scrollleiste einfach vor dem Laden der Einträge abfragen, in einer Variable speichern und nach dem Laden wieder dem Control zuweisen.

    Users[4939].postCount++;


    • Weltherrschafts AG in Cooperation mit Weltuntergangs GmbH:
      "Wir sorgen dafür, dass sie sich keine Sorgen um Morgen machen müssen!"
  • sry, hab ich wohl irgendwie überlesen... das müsste aber das VerticalScrollingOffset und das HorizontalScrollingOffset sein.
    z.B. dataGridView.HorizontalScrollingOffset

    Users[4939].postCount++;


    • Weltherrschafts AG in Cooperation mit Weltuntergangs GmbH:
      "Wir sorgen dafür, dass sie sich keine Sorgen um Morgen machen müssen!"
  • Die Eigenschaft VerticalScrollingOffset ist schreibgeschützt, damit kann ich sie nicht verändern :( bei HorizontalScrollingOffset geht das aber...


    /E: Ich habe per PM gesagt bekommen, dass man die Eigenschaft FirstDisplayedScrollingRowIndex verwenden kann. Funktioniert super, trotzdem danke!