Ich habe ein Programm, das nur eine NotifyIcon benötigt, um wie beabsichtigt zu arbeiten. Also habe ich versucht, das Hauptformular zu verstecken, wenn das Programm startet.Formular beim Start verstecken
In frmMain_Load habe ich versucht, beide
this.Hide();
this.Visible = false;
ohne Erfolg.
Sie arbeiten in anderen Methoden, wie in der NotifyIcon_MouseClick-Methode, aber ich möchte es bei Load verstecken.
sah ich hier in einer anderen Frage auf SO, wo Matias dies vorgeschlagen:
BeginInvoke(new MethodInvoker(delegate
{
Hide();
}));
Dies funktioniert, aber wenn ich das Programm starten kann ich die Form zu blinken wirklich schnell sehen. Es ist besser als nichts, aber ich frage mich, ob es eine bessere Lösung dafür gibt.
Danke.
Diese Lösung hat ein Problem. In diesem Fall würden beim Schließen des Formulars die Ereignisse "FormClose" und "FormClosing" nicht erhöht. – parseh
Wie können Sie die Anwendung beenden, wenn das Formular mit der Schaltfläche X geschlossen wird? –
Eine bessere Lösung besteht darin, einen 'ApplicationContext' zu erstellen und eine Instanz davon an' Application.Run() 'zu übergeben, die den Lebenszyklus des Formulars verwaltet und somit vermeidet,' Application.Exit() 'an anderer Stelle aufzurufen. –