Hallo,
in einem DataGridview können nach der msdn-Webseite auch eigene Controls angebunden werden:
msdn.microsoft.com/de-de/library/y0wfd4yz(v=vs.110).aspx
Für mein Projekt müssen Angaben vor der Anzeige in einer Textbox erst "bearbeitet" werden, um anschließend angezeigt zu werden. Sobald der Anwender diese Angaben verändert, müssen diese wieder vor dem Übernehmen ins Dataset "bearbeitet" werden.
bislang wurde es so gelöst, dass eine Textbox Namens "Key" außerhalb der DatagridView platziert wurde, die nur mit Databinding an den aktuellen Datensatz der DataGridview angebunden wurde. Sobald im DataGridview der Datensatz gewesechselt wure, wird auch die Angabe in der separten Textbox "Key" geändert. In einer zweiten seperaten Textbox "KeyView" wird der "bearbeitete" Inhalt der "Key"-Textbox angezeigt. Der Anwender kann den Inhalt in der "KeyView"-Textbox bearbeiten. Bei einer Änderung wird der Inhalt über eine Funktion "bearbeitet" und das Ergebnis in die "Key"-Textbox geschrieben.
Die Textbox "Key" hat nur die Funktion, dass die Inhalte mit dem Datenquelle verbunden werden können. Diese ist für den Anwender unsichtbar.
Es wäre für den Anwender leichter, wenn die seperate "KeyView" Textbox in die DataGridView als Spalte mit integriert werden kann.
Daher nun meine Frage: Ist das möglich?
Eine mögliche theoretischer Lösungsansatz wäre im DatagridView eine Spalte "Key" unsichtbar einzubinden, und eine zweite Spalte ungebunden mit dem Namen "KeyView" im DataGridView aufzunehmen. Programmatisch müsste dann eine Verbindung von der Spalte "Key" zum "KeyView" hergestellt werden.
En anderer theoretischer Lösungsansatz wäre das Datagridview an eine Klasse zu binden, in der alle Spalten inkl. KeyView bereitgestellt werden.
Die Daten der anderen Spalten 'werden nr 1:1 durchgereicht, während die von "Key" erst in der Klasse "Bearbeitet" und das Ergebnis anschließend an das DataGridView gereicht wird. Beim Aktualisieren der Spalte "Key" alias "KeyView" müssen die Inhalte ebenfalls vor dem weiterreichen an die Datenquelle "bearbeitet" werden.
Der letztere Lösungsansatz scheint mir am sinnvollsten, da hierbei auf Standard-DatagridView Controls zurückgegriffen werden kann. Hierbei wird auch "nur" eine Textbox pro Datensatz benötigt; bei der anderen werden hingegen zwei Textboxen benötigt:"Key" (unsichtbar) und "KeyView"
Ich habe bislang leider keine Erfahrungen mit Klassen, die als DataSource herangezogen werden können.
Auch mit der Erstellung von eigenen Controls habe ich bis dato keine Erfahrungen machen können.
Hat jemand schon mal ein ähnliches Projekt umgesetzt, oder hat jemand Webseite(n), auf denen das Thema sogar mit Beispielen veranschaulicht wird?
in einem DataGridview können nach der msdn-Webseite auch eigene Controls angebunden werden:
msdn.microsoft.com/de-de/library/y0wfd4yz(v=vs.110).aspx
Für mein Projekt müssen Angaben vor der Anzeige in einer Textbox erst "bearbeitet" werden, um anschließend angezeigt zu werden. Sobald der Anwender diese Angaben verändert, müssen diese wieder vor dem Übernehmen ins Dataset "bearbeitet" werden.
bislang wurde es so gelöst, dass eine Textbox Namens "Key" außerhalb der DatagridView platziert wurde, die nur mit Databinding an den aktuellen Datensatz der DataGridview angebunden wurde. Sobald im DataGridview der Datensatz gewesechselt wure, wird auch die Angabe in der separten Textbox "Key" geändert. In einer zweiten seperaten Textbox "KeyView" wird der "bearbeitete" Inhalt der "Key"-Textbox angezeigt. Der Anwender kann den Inhalt in der "KeyView"-Textbox bearbeiten. Bei einer Änderung wird der Inhalt über eine Funktion "bearbeitet" und das Ergebnis in die "Key"-Textbox geschrieben.
Die Textbox "Key" hat nur die Funktion, dass die Inhalte mit dem Datenquelle verbunden werden können. Diese ist für den Anwender unsichtbar.
Es wäre für den Anwender leichter, wenn die seperate "KeyView" Textbox in die DataGridView als Spalte mit integriert werden kann.
Daher nun meine Frage: Ist das möglich?
Eine mögliche theoretischer Lösungsansatz wäre im DatagridView eine Spalte "Key" unsichtbar einzubinden, und eine zweite Spalte ungebunden mit dem Namen "KeyView" im DataGridView aufzunehmen. Programmatisch müsste dann eine Verbindung von der Spalte "Key" zum "KeyView" hergestellt werden.
En anderer theoretischer Lösungsansatz wäre das Datagridview an eine Klasse zu binden, in der alle Spalten inkl. KeyView bereitgestellt werden.
Die Daten der anderen Spalten 'werden nr 1:1 durchgereicht, während die von "Key" erst in der Klasse "Bearbeitet" und das Ergebnis anschließend an das DataGridView gereicht wird. Beim Aktualisieren der Spalte "Key" alias "KeyView" müssen die Inhalte ebenfalls vor dem weiterreichen an die Datenquelle "bearbeitet" werden.
Der letztere Lösungsansatz scheint mir am sinnvollsten, da hierbei auf Standard-DatagridView Controls zurückgegriffen werden kann. Hierbei wird auch "nur" eine Textbox pro Datensatz benötigt; bei der anderen werden hingegen zwei Textboxen benötigt:"Key" (unsichtbar) und "KeyView"
Ich habe bislang leider keine Erfahrungen mit Klassen, die als DataSource herangezogen werden können.
Auch mit der Erstellung von eigenen Controls habe ich bis dato keine Erfahrungen machen können.
Hat jemand schon mal ein ähnliches Projekt umgesetzt, oder hat jemand Webseite(n), auf denen das Thema sogar mit Beispielen veranschaulicht wird?