Öffnen von Form-Instanzen in C#

Nun ist es problemlos möglich, die gewünschte Form1-Instanz von Form2 aus zu öffnen, indem der in der Variablen Form1.staticVar gespeicherte Verweis benutzt wird. Hier das überarbeitete Klick-Ereignis in Form2:


Führen Sie das Projekt erneut aus. Geben Sie einen Text in das Textfeld von Form1 ein, z.B. den Satz „This time I’ll get back to my instance!“ Klicken Sie auf die Schaltfläche zum Verbergen des Textes und zur Anzeige von Form2. Wenn Sie in Form2 auf die Schaltfläche zur Anzeige von Form1 klicken, wird die Instanz von Form1 mit Ihrer Eingabe angezeigt, wie in Abbildung B dargestellt.

Abbildung B
Abbildung B

Diese Vorgehensweise lässt sich grundsätzlich ohne Probleme anwenden. Allerdings widerspricht ein übermäßiger Einsatz öffentlicher Variablen den Prinzipien einer sorgfältigen Programmierung (vor allem, da die Variablen nicht verkapselt sind). Außerdem werden auf diese Weise vermutlich zu viele Ressourcen belegt. Eine bessere Lösung ist daher das Speichern des Form-Instanz-Verweises als Eigenschaft einer der Klassen.

Wir werden nun also zu der Form2-Klasse eine Eigenschaft hinzufügen, die einen Verweis zu einer Instanz einer Form-Klasse enthält. (Beachten Sie, dass ich diese Eigenschaft mithilfe der allgemeineren Form-Klasse statt mit der spezifischen Form1 erstelle, so dass Verweise zu Instanzen einer beliebigen, von der Form-Klasse abgeleiteten Klasse in der Eigenschaft gespeichert werden können, statt nur Verweise zu den Form1-Instanzen.)

Sie können für das rasche Erstellen der Eigenschaft den über das Fenster Class View verfügbaren C# Property Wizard benutzen, doch lässt sich die Eigenschaft auch problemlos manuell im Form2-Klassenmodul einrichten.

Hier die zum Form2-Klassenmodul hinzugefügte Eigenschaft (diese kann an einer beliebigen Stelle in die Klasse eingefügt werden):


Beachten Sie, dass eine private Variable zum Speichern des Werts in der Klassen-Instanz, die Zugreifer get und set sowie das Schlüsselwort value zum Erstellen eines neuen Eigenschaftswerts verwendet wurden.

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 *