Wert des dateTimePicker über eine andere Form ändern
-
Hallo,
ich habe folgendes Problem:
Ich habe in meinem Projekt mehrere Formen, in einer Form befinden sich 2 dateTimePicker!
Nach dem klicken auf den Ok Button, werden die Daten von den beiden dateTimePicker in das dataGridView einer anderen Form gespeichert.
Nun möchte ich dies auch umkehren, d.h. wenn ich auf einen Button drücke, sollen die Daten vom dataGrid dem dateTimePicker auf einer anderen Form übergeben werden.
Mein Code funktioniert wenn sich alles auf einer Form befindet, aber dass ist ja nicht mein gewünschter Effekt.
Ich vermute mal, dass das Datum an das dateTimePicker1 gesendet wird und dann beim Formload mit dem aktuellen Datum von Heute überschrieben wird.Meine Frage ist nun, wie kann ich diese automatische Überschreibung vom dateTimePicker unterbinden?
-
Kein Schimmer oder hab ich mich zu unklar ausgedrückt?
Mfg. Sven
-
Naja da gehst du über events. du schreibst dir ein event was dir das aktuell ausgewählte datum in dem anderen form übergibt. an das event hängst du dich nur in deinem anderen form dran.
-
Firefighter schrieb:
Naja da gehst du über events. du schreibst dir ein event was dir das aktuell ausgewählte datum in dem anderen form übergibt. an das event hängst du dich nur in deinem anderen form dran.
altrnativ könne man sich auch mal auseinadersetzen wie OOP funktioniert ... das ist (erstmal) nur ein simples OOP-Problem
-
Joa gut, er könnte die Daten über Properties in den jeweiligen Forms hin und her übergeben, aber die Events sind die sauberere Lösung meines Erachtens. Wenn dir was besseres einfällt, immer her damit ich bin offen für bessere lösungen
-
Sorry ich brauch wohl etwas mehr Hilfe von euch...
Hier mal ein Code Snippet wie es momentan ausschaut:// Datensatz Bearbeiten public void button3_Click(object sender, EventArgs e) { Form2 F2 = new Form2(); ... // Startdatum F2.dateTimePicker1.Value = Convert.ToDateTime(dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[5].Value); // Enddatum F2.dateTimePicker2.Value = Convert.ToDateTime(dataGridView1.Rows[dataGridView1.CurrentRow.Index].Cells[6].Value); ... }
Wie gesagt, wenn sich alles auf der selben Form befindet klappts.
Ich bitte um ein bisschen code Antwort.
Das Problem ist bestimmt relativ leicht zu lösen, aber mein Wissen reicht hier wohl noch nicht ausMfg. Sven
-
Immer das gleiche Problem...
Überleg dir mal genau, warum das Schlüsselwort 'new' heißt?
Hier noch ein Link zur "Kommunikation zwischen 2 Forms": http://www.mycsharp.de/wbb2/thread.php?threadid=5960