Gast
#3610091
Hallo ich habe in einem Programm jetzt noch eine weitere Form hinzugefügt und würde an ihr(Form2) gerne Werte aus Form1 weitergeben. Wie mache ich das?
|
Anzeige
|
c# Werte in neue Form weitergeben
Gast
#3610091
Hallo ich habe in einem Programm jetzt noch eine weitere Form hinzugefügt und würde an ihr(Form2) gerne Werte aus Form1 weitergeben. Wie mache ich das?
Gast
#3610105
Fuzzi59 schrieb: > Wie mache ich das? dafür sollte man sinnvollerweise Programmlogik und GUI von einander Trennen. Man legt also eine neu Klasse an wo das eigentliche Programm mit seinen Daten drin steckt. Die beiden Forms bekommen jeweils eine Referenz von den Programmobjekt und können darüber Daten austauschen.
Gast
#3610252
Beispiel: Form1: Eingabe einer Zahl in einer Textbox Form2: Benutzung der Textbox aus Form1 Das bedeutet ich möchte in Form1 eine Textbox (und auch zwei Radiobuttons) ändern und in Form2 passiert dann etwas.
Gast
#3610588
Du kannst dem Konstruktor von Form2 die Werte von Form1 übergeben und dann in Form2 damit arbeiten.
Gast
#3610618
Ja, aber ich will wissen, wie gerade das funktioniert.
Gast
#3610673
Na du ergänzt den Konstruktor deiner zweiten Form um die Variablen, die du dort benötigst und übergibst sie von Form1 aus? ...oder du ergänzt in Form2 eine Funktion, die du von Form1 nach dem Erzeugen von Form2 aufrufst und Form2 darüber die Daten gibst. Fuzzi59 schrieb: > Ja, aber ich will wissen, wie gerade das funktioniert. z.B. könntest du einen zweiten Konstruktor anlegen, dem du dann auch Werte übergibst. (natürlich kannst du auch gleich den ersten ändern)
Beim Aufruf von new Form1() kannst du jetzt auch new Form1(string strWert) wählen.
Gast
#3611126
Gast
#3611222
So weit bin, aber in Form2 bekomme ich die Werte trotzdem nicht
Gast
#3611238
@Fuzzi59 hast du dir überhaupt die Mühe gemacht und meinen Link angeklickt? In welcher Form willst du denn den Wert? Wenn du ihn in Form2 haben willst, musst du natürlich den Konstruktor der Form2 erweitern. (so wie den der Form1) Dort, wo du Form2 instanzierst (.....=new Form2() musst du dann den erweiterten Konstrukor new Form2(int Zeit) verwenden.
Gast
#3611369
Hätte mir besser das Beispiel genauer angeguckt, aber jetzt funktioniert es so wie es auch soll. Danke für die vielen Antworten. Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|