Änderung in einer Datatable in Datagridview übernehmen

  • VB.NET
  • .NET (FX) 4.0

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

    Änderung in einer Datatable in Datagridview übernehmen

    Hallo,

    ich erstelle im Code eine ganz normal Datatable mit zwei Columns(type: string)=f1 und f2. Die Datatable wird so erstellt (das Hinzufügen der Columns ist jetzt nicht wichtig):

    VB.NET-Quellcode

    1. _OutputDataTable = New DataTable


    Also immer totaler Neuanfang.

    Danach fülle ich die Datatable mit einigen Rows. Dann weise ich diese Datatable einem Gridview zu und lasse die Daten anzeigen. Die Zuweisung mache ich so:

    VB.NET-Quellcode

    1. dgvErgebnis.DataSource = dtTest


    Beim nächsten Mal wird die Tabelle nocheinmal erstellt, es werden wieder 2 Columns hinzugefügt (wieder f1 und f2), aber dieses Mal f2 steht vorne. Ich fülle wieder einige Rows in die Tabelle und weise dem Gridview zu.

    Aber das Ergebnis bleibt das Gleiche. Das ist auch richtig, weil die Daten an sich nicht geändert haben, nur eben die Reihenfolge der Columns. Aber die sollten im Gridview auch ändern.

    Die Änderung erreiche ich nur so, indem ich das datasource auf nothing setze und die Tabelle nocheinmal zuweise:

    VB.NET-Quellcode

    1. dgvErgebnis.DataSource = Nothing
    2. dgvErgebnis.DataSource = dtTest


    Frage: kann ich irgendwie bereits bei der Erstellung der datatable das bestimmen, dass diese Änderungen ohne die Zeile

    VB.NET-Quellcode

    1. dgvErgebnis.DataSource = Nothing
    angezeigt werden? O. geht das nur mit dem direkten Ansprechen des Datasource?

    Danke.
    Du erzeugst

    vb_fan schrieb:

    _OutputDataTable
    und verwendest

    vb_fan schrieb:

    dtTest
    ?
    Sieh Dir mal dieses Beispiel an.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Ja, das mit dem Tablename habe ich bemerkt, aber woellte nicht mehr editieren, da das jetzt irrelevant ist.

    Ich habe dein Beispiel angeschaut, da wird in Initdata das datasource auf nothing gesetzt und dann in Showdata das datatable gesetzt. Also so, wie bei mir. Dann lasse ich es so.