Laden...

Prüfen ob Formular geschlossen wurde

Erstellt von Grimmbizkit vor 17 Jahren Letzter Beitrag vor 17 Jahren 4.247 Views
G
Grimmbizkit Themenstarter:in
310 Beiträge seit 2006
vor 17 Jahren
Prüfen ob Formular geschlossen wurde

Hallo,

ich habe 2 Formulare (Formular A, Formular B)

In Formular A öffne ich das Formular B, nun möchte ich wenn ich Formular B geschlossen habe, das in Formular A ein bestimmter Code ausgeführt wird, wie macht man sowas?

Gruß Simon

D
481 Beiträge seit 2005
vor 17 Jahren

Gibt mehrere Möglichkeiten.

Wenn du die Form B über ShowDialog aufrufst, läuft der Code in der Form A weiter, sobald die Form geschlossen wird oder du realisierst das ganze über Events.

Dexter

Programmierer sind Maschinen die Koffein in Quellcode umsetzen.

664 Beiträge seit 2005
vor 17 Jahren

Hi

du kannst das z.B. über die Events FormClosing/FormClosed realisieren.

mfg

Christoph

O
77 Beiträge seit 2006
vor 17 Jahren

oder einfach


while(A.Visible)
{
}
//Hier dann der code der ausgeführt werden soll nachdem Form A geschlossen wurde

is aber nich die optimale lösung 🙂

Obstehende Probleme können häufig miserabel Formuliert und dadurch extrem unverständlich sein

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo odysy,

nee, das ist nicht nur nicht optimal, sondern schlicht falsch, weil dadurch das GUI-blockiert, wenn der Code im GUI-Thread läuft. Und wenn er in einem extra-Thread laufen soll, ist er falsch, weil man da nicht ohne Control.Invoke auf A.Visible zugreifen darf.

Und ich verstehe auch nicht so ganz, warum das postet, wo doch die optimale Lösung schon genannt wurden:

Events Form.FormClosing/Form.FormClosed (bzw. auch Form.Closing/Form.Closed)

herbivore