Suche Funktion zum Setzen einer Zelle im DataGrid



  • Hallo,

    Ich habe ein DataGrid ohne Datenbank und möchte die einzelnen Zellen des Grids ansprechen um Werte zu schreiben.
    In VC6 gibt es beim FlexGrid eine Funktion die genau das macht: SetTextArray( Index, Value).
    Gibt es so was auch für c# (windows Forms)?

    Vielen Dank für Eure Hilfe



  • Ein bisschen Google bemühen und man findet sogar was:
    http://entwickler-forum.de/archive/index.php/t-43707.html



  • Vielen Dank für die Antwort.
    Nur möchte ich keine Daten auslesen, sondern Daten in die Zellen vom Grid schreiben.
    Apropos Google - ich finde wirklich keine Funktion / Methode die es ermöglicht Daten ins Grid zu schreiben. Das wundert mich so, dass ich denke ich habe ein Brett vor dem Kopf.
    Wie schon gesagt, in VC6 kann ich jede Zelle direkt indizieren und dieser einen Wert übergeben.
    Das muß doch auch in C# gehen.



  • string schrieb:

    Das muß doch auch in C# gehen.

    Ohne Gewaehr 😉 :

    Das Control heisst glaube ich DataGridView und funzt etwas anders. Es zeigt tatsaechlich nur an und hat keine eigenen Zellen oder ganze Zeilen oder Spalten. Stattdessen wird als DataSource-Eigenschaft eine DataTable "angetackert" (nicht zu woertlich nehmen 😉 ), und was Du jetzt in Wirklichkeit hier aenderst sind die DataColumns in der DataTable - das DataGridView zeigt dann automatisch die Aenderungen der DataTable an.
    Mit anderen Worten hast Du hier ein Zusammenspiel von DataGridView und DataTable.



  • Auch wenn DataBinding beim DataGridView zu bevorzugen ist, so kann man doch auf die einzelnen Zellen zugreifen:

    object value = ...
    datagridview.Rows[y].Cells[x].Value = value;
    value = datagridview.Rows[y].Cells[x].Value;
    

Anmelden zum Antworten