Öffnen von Form-Instanzen in C#

Oftmals sind in einer Windows-Formular-Instanz natürlich erheblich mehr Daten als nur ein einzelner Satz enthalten, die aus Benutzereingaben oder anderen Vorgängen stammen. Wie kann man also zu der aktuellen Instanz von Form1 zurückkehren und diese Daten beibehalten?

Dazu ist der Zugriff auf eine Variable erforderlich, die auf die spezifische Instanz der Form1 verweist, die wir anzeigen möchten. Eine Möglichkeit hierfür besteht in der Verwendung einer öffentlichen, statischen Variable mit einem Verweis auf die Instanz. (Der Unterschied zwischen statischen Klassen-Membern und Instanz-Membern wie Variablen besteht darin, dass statische Member nicht instantiiert werden müssen.)
Deklarieren Sie hierzu direkt unter der Deklaration der Form1-Klasse eine öffentliche, statische Variable vom Typ Form1. Ich habe die Variable staticVar genannt:


Es gibt übrigens keinen Grund, diese Variable in das Form1-Modul zu setzen. Solange sie öffentlich und statisch ist, kann sie an jede beliebige Stelle gesetzt werden. Wenn Sie mehrere öffentliche, statische Variablen verwenden, bietet es sich an, in einem separaten Klassenmodul eine eigene Klasse für die Variablen einzurichten. Beachten Sie auch, dass ich die Variable unter Verwendung des Schlüsselworts null initialisiert habe, so dass sie ausdrücklich keinen Formular-Verweis enthält.

Wenn Sie die Form2-Instanz anzeigen möchten, verwenden Sie das Schlüsselwort this, um einen Verweis auf die aktuelle Form1-Instanz in der Variablen staticVar zu speichern:


Hier der vollständige überarbeitete Code für das Klick-Ereignis, mit dem die Instanz von Form2 angezeigt wird:


Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Öffnen von Form-Instanzen in C#

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *