Hallo,
ich arbeite gerade an einem etwas komplexeren Datenmodell. DataGridViews und weitere Controls sind bereits fertig und korrekt über Bindingsources miteinander und an ein DataSet verknüpft, es funktioniert soweit alles so, wie es soll. Jedoch muss ich die Daten jetzt auch grafisch darstellen, und zwar so komplex, das fertige Controls nicht ausreichen. Ich hab mir also ein eigenes Control geschrieben und reagiere dort auf Änderungen im Datenmodell über die CurrentChanged- und CurrentItemChanged-Ereignisse der BindingSource.
CurrentChanged funktioniert auch einwandfrei, klicke ich mich im DataGridView durch die Spalten durch, dann wird auch die Darstellung so aktualisiert, wie erwartet. Beim CurrentItemChanged gibt es jedoch Probleme. Die Sache ist die, dass einige Spalten der DataTable nicht im DataGridView angezeigt werden, sondern in einzelnen NumericUpDowns (also DetailView, so hat das ErfinderDesRades glaube ich in seinen vier Views genannt), genauer gesagt alle bis auf die Name-Spalte (das DataGridView wird praktisch als bessere ListBox verwendet). Wenn ich nun einige Werte mit diesen NumericUpDowns ändere, dann wird in der BindingSource das CurrentItemChanged-Event nicht ausgelöst. Das bedeutet für meine Darstellung, dass diese erste aktualisiert wird, wenn ich im DataGridView zunächst eine andere Zeile auswähle und dann wieder die geänderte Zeile auswähle. Es wird zwar alles korrekt ins DataSet eingetragen, ich hätte es aber gerne so, dass dies bereits geschieht, während man die Werte in den NumericUpDaowns ändern, nicht erst, wenn man eine andere Zeile im DataGridView auswählt, sodass sich die Darstellung sofort aktualisiert. Gibts da irgendwas?
ich arbeite gerade an einem etwas komplexeren Datenmodell. DataGridViews und weitere Controls sind bereits fertig und korrekt über Bindingsources miteinander und an ein DataSet verknüpft, es funktioniert soweit alles so, wie es soll. Jedoch muss ich die Daten jetzt auch grafisch darstellen, und zwar so komplex, das fertige Controls nicht ausreichen. Ich hab mir also ein eigenes Control geschrieben und reagiere dort auf Änderungen im Datenmodell über die CurrentChanged- und CurrentItemChanged-Ereignisse der BindingSource.
CurrentChanged funktioniert auch einwandfrei, klicke ich mich im DataGridView durch die Spalten durch, dann wird auch die Darstellung so aktualisiert, wie erwartet. Beim CurrentItemChanged gibt es jedoch Probleme. Die Sache ist die, dass einige Spalten der DataTable nicht im DataGridView angezeigt werden, sondern in einzelnen NumericUpDowns (also DetailView, so hat das ErfinderDesRades glaube ich in seinen vier Views genannt), genauer gesagt alle bis auf die Name-Spalte (das DataGridView wird praktisch als bessere ListBox verwendet). Wenn ich nun einige Werte mit diesen NumericUpDowns ändere, dann wird in der BindingSource das CurrentItemChanged-Event nicht ausgelöst. Das bedeutet für meine Darstellung, dass diese erste aktualisiert wird, wenn ich im DataGridView zunächst eine andere Zeile auswähle und dann wieder die geänderte Zeile auswähle. Es wird zwar alles korrekt ins DataSet eingetragen, ich hätte es aber gerne so, dass dies bereits geschieht, während man die Werte in den NumericUpDaowns ändern, nicht erst, wenn man eine andere Zeile im DataGridView auswählt, sodass sich die Darstellung sofort aktualisiert. Gibts da irgendwas?