Hallo C#,
dein Programmdesign ist außerst konfus. Du hast anscheinend die ApplicationContext-Klasse überhaupt nicht verstanden (trotz des gut gemeinten Ratschlags von Ralf Jansen in dem anderen Beitrag von dir
Form2.Show() funktioniert nicht solltest du besser bei der einfachen Standardvariante bleiben).
Bisher 'funktioniert' dein Code auch nur wegen den ShowDialog()-Aufrufen, da diese eine eigene MessageLoop verwenden (d.h. es ist völlig egal, ob du eine ApplicationContext oder sonst eine andere Klasse verwendest).
Eine andere Alternative wäre der Aufruf der
C#-Quelltext
(d.h. ohne Angabe eines Formulars).
Dann müßtest du nur Application.Exit() an der richtigen Stelle aufrufen (d.h. beim Close() des Hauptformulars).
Jedoch empfehle ich dir dringend (bei deinen jetzigen Kenntnissen) es so zu machen, wie ich es in dem anderen Beitrag vorgeschlagen habe.