Datagridview - Checkbox: Statusänderung wird bei zweiten Durchlauf nicht angezeigt

  • VB.NET

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

    Datagridview - Checkbox: Statusänderung wird bei zweiten Durchlauf nicht angezeigt

    Hallo zusammen,

    Ich habe eine Datagridview mit einer über Datasource angebundenen Datatable, deren erstes Feld boolean ist.
    Wird also im Datagridview als Checkbox angezeigt.
    Nun habe ich einen Button, mit dem ich die Auswahl dieser Checkbox umdrehe, so dass die markierten (true) in nicht markiert (false) gesetzt werden und umgedreht.

    Dies funktioniert nach der ersten Anbindung an den Datasource auch wunderbar, die Haken sind sichtbar.

    Anschließend wird die Datatable wieder mit Inhalt gefüllt und erneut per Datasource angebunden.
    Wenn ich nun den Button anklicke wird zwar der Wert der Checkbox geändert und kann auch ausgewertet werde. Nur leider zeigt der Datagridview die Markierung nicht mehr an.
    Wenn ich die Checkbox manuell anklicke, funktioniert es.

    Folgendes habe ich bisher versucht:

    1. Refresh: Keine Wirkung
    2. Update: Keine Wirkung
    3. Focus auf Datagridview: Beim ersten und zweiten anklicken passiert nichts, danach werden die Markierungen angezeigt. Da dies leider auch schon beim ersten Durchgang (der ohne Fokus normal funktioniert) so ist, habe ich diese Lösung verworfen.

    bazonga schrieb:

    Nun habe ich einen Button, mit dem ich die Auswahl dieser Checkbox umdrehe, so dass die markierten (true) in nicht markiert (false) gesetzt werden und umgedreht.
    Verstehe ich dich richtig, dass du vom Code aus im Datagrid rumfriemelst? Mach des nich. Ändere die Daten in der gebundenen Datatable.
    Ein Datagridview dient lediglich der Präsentation und Interaktion mit dem Nutzer. Die Daten werden im Dataset mit seinen Tables gespeichert und sollten auch nur dort bearbeitet werden. Die Bindingsource stellt die Verbindug zwischen Dataset und Datagridview her. Und die sorgt auch für die Synchronisierung der Daten zwischen Tabelle und DGV. Außerdem sorgt sich die Bindingsource um das Filtern und Sortieren der anzuzeigenden Daten. Halte dich an diese Aufgabenverteilung und du wirst viel Freude an deine Anwendung haben.

    Fiel Fergnügen

    Vatter
    :thumbsup: Seit 26.Mai 2012 Oppa! :thumbsup: