Azzidodabass hat folgendes geschrieben : |
| das klappt leider nicht!! |
Das ist keine aussagefähige Problembeschreibung. Bitte denke künftig daran, dass Du beschreibst, was und wie nicht funktioniert.
Aber in dieser Situation sind mehrere Punkte klar:
1. Du musst die Zugriffsberechtigung berücksichtigen: public, private u.a. Ein Control ist grundsätzlich private, ist also "von außen" nicht zugänglich.
2. Wenn sich button1 in Form1 befindet, darfst Du nicht den Variablennamen form1 verwenden, sondern direkt label1 (allenfalls this.label1).
3. In aller Regel kennen zwei Formulare sich nicht. Allenfalls ist das eine Formular (Form2) abhängig vom anderen (Form1), aber nicht umgekehrt. Du kannst also höchstens von Form1 auf form2 zugreifen. Außerdem musst Du aufpassen mit der Bezeichnung der Klasse und der konkreten Instanz.
4. Du benötigst dafür eine public-Methode oder eine Eigenschaft in Form2, mit der Du von Form1 aus etwas erledigst:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7:
| public void SetLabelText(string value) { this.label2.Text = value; }
form2.SetLabelText(this.label1.Text); |
5. Für die Übergabe von Form2 auf Form1 solltest Du den "richtigen" Weg über Delegates gehen. Aber das ist komplizierter.
6. Bitte fang mit vernünftigen Bezeichnern an. Form1 und Form2 sind keine Namen, die etwas aussagen.
Hast Du Dich eigentlich schon mit einführender Literatur befasst?
OpenBook VC#
Viele Hinweise gibt es auch durch [url=
www.mycsharp.de/wbb2...d.php?threadid=5960]
[FAQ] Kommunikation von 2 Forms[/url] und die dortigen Verweise.
Jürgen