Laden...

Form1 aus Taskleiste wiederherstellen

Erstellt von Fehler vor 2 Jahren Letzter Beitrag vor 2 Jahren 500 Views
F
Fehler Themenstarter:in
22 Beiträge seit 2022
vor 2 Jahren
Form1 aus Taskleiste wiederherstellen

Hallo zusammen,

ich habe Form1 und Form2.
Auf Form 1 befindet sich ein Button mit folgenden Code:


            Form2 Form2 = new Form2();
            Form2.Show();
            this.WindowState = FormWindowState.Minimized;

Hiermit wird mein Hauptfenster (Form1) in die Taskleiste gelegt und Form2 geöffnet, bis hierhin funktioniert alles.

Jetzt zum eig. Problem...
Ich würde gerne beim schließen von Form2, die Form1 wieder in den Vordergrund holen. Aber wie?
Hat jemand eine Idee?

Viele Grüße

Sarkasmus ist die Kunst, Menschen einen Spiegel vorzuhalten. Nur merken es viele nicht.

4.939 Beiträge seit 2008
vor 2 Jahren

Fast genauso:


this.WindowState = FormWindowState.Normal;

Oder weißt du nicht, wie man auf das Schließen einer Form reagiert? Dazu einfach das FormClosed-Ereignis benutzen:


Form2.FormClosed += Form2_FormClosed; // bessere Namen benutzen!!


void Form2_FormClosed(object sender, FormClosedEventArgs e)
{
  this.WindowState = FormWindowState.Normal;
}

PS: Wenn du direkt im Programmablauf auf das Schließen der anderen Form warten willst, dann kannst du auch einfach ShowDialog(this) benutzen (wenn der Anwender währenddessen nicht auf die Hauptform zugreifen soll).

F
Fehler Themenstarter:in
22 Beiträge seit 2022
vor 2 Jahren

Hallo Th69,

danke für die schnelle Antwort.
Doch doch, das Ereignis nutze ich natürlich, allerdings funktioniert "this" nicht, da ich mich ja in Form2 befinde...
Es würde sich also auf Form2 beziehen und wenn ich stattdessen das hier einbgebe:


this.WindowState = FormWindowState.Normal;

bekomme ich diesen Fehler:
Schweregrad Code Beschreibung Projekt Datei Zeile Unterdrückungszustand
Fehler CS0120 Für das nicht statische Feld, die Methode oder die Eigenschaft "Form.WindowState" ist ein Objektverweis erforderlich. prog C:\Users\3beine\source\repos\Floppi\Form2.cs 68 Aktiv

Sarkasmus ist die Kunst, Menschen einen Spiegel vorzuhalten. Nur merken es viele nicht.

4.939 Beiträge seit 2008
vor 2 Jahren

Du mußt den Code in deine Hauptform packen (darum ja Form2.FormClosed += ..., also vor dem Aufruf von Form2.Show()).

F
Fehler Themenstarter:in
22 Beiträge seit 2022
vor 2 Jahren

Ok, das war einfach und funktioniert!
Vielen Dank für deine Hilfe!!! 😉

Form2 hat schon einen richtigen Namen, hatte das bewusst fürs Forum gekürzt.... 👍

Sarkasmus ist die Kunst, Menschen einen Spiegel vorzuhalten. Nur merken es viele nicht.