Forum: PC-Programmierung c# Werte in neue Form weitergeben


von Fuzzi59 (Gast)


Lesenswert?

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?

von Peter II (Gast)


Lesenswert?

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.

von Fuzzi59 (Gast)


Lesenswert?

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.

von Guest (Gast)


Lesenswert?

Du kannst dem Konstruktor von Form2 die Werte von Form1 übergeben und 
dann in Form2 damit arbeiten.

von Fuzzi59 (Gast)


Lesenswert?

Ja, aber ich will wissen, wie gerade das funktioniert.

von bluppdidupp (Gast)


Lesenswert?

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.

von Prog R. (daniel_v)


Lesenswert?

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)
1
 public Form1()
2
        {
3
            InitializeComponent();
4
        }
5
6
        public Form1(string strWert) //dieser Konstruktor übernimmt auch einen Wert)
7
        {
8
            InitializeComponent();
9
10
        }

Beim Aufruf von new Form1() kannst du jetzt auch new Form1(string 
strWert) wählen.

von DeppVomDienst (Gast)


Lesenswert?


von Fuzzi59 (Gast)


Angehängte Dateien:

Lesenswert?

So weit bin, aber in Form2 bekomme ich die Werte trotzdem nicht

von DeppVomDienst (Gast)


Lesenswert?

@Fuzzi59
hast du dir überhaupt die Mühe gemacht und meinen Link angeklickt?

von Prog R. (daniel_v)


Lesenswert?

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.

: Bearbeitet durch User
von Fuzzi59 (Gast)


Lesenswert?

Hätte mir besser das Beispiel genauer angeguckt, aber jetzt funktioniert 
es so wie es auch soll. Danke für die vielen Antworten.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.