Hallo Forum,
ich möchte eine Anwendung mit dem Anmeldeformular starten (Form1). Es hat zwei TextBoxen User und Passwort und zwei Buttons. Nach der Eingabe die Dateien wird Accept-Button gedrückt. Dann soll mein Haupformular (Form2) gestarted werden und zwar so, dass Form1 geschlossen wird.
Ich habe im Form1 nach Form2.Show(); den Form1.Close(); ausgegegeben das schliesst aber die ganze Anwendung.
Könnte mir jemand behilflich sein?
Vielen Dank!
Einen neuen Thread öffnen ...geht so:
private void Apply_Click(object sender, System.EventArgs e)
{
Thread thread = new Thread (new ThreadStart(startNewForm));
thread.Start();
this.Dispose();
}
private void startNewForm()
{
Application.Run(new Form2());
}
uppsi..hatte ein Klammerpaar vergessen 🙂
Reden führt zu unklaren, undeutlichen Dingen. 'George W. Bush'
Hallo andreas_sharp,
statt
Application.Run(new Form2());
musst du
new Form2 ();
Application.Run ();
verwenden.
Genaueres in meinem Beitrag in
HTH
herbivore
Musst du?
Muss ich hier nicht 🙂
Reden führt zu unklaren, undeutlichen Dingen. 'George W. Bush'
Hallo Massaka,
dadurch, dass du in dem neuen Thread wieder Application.Run verwendest, wird die Anwendung nicht geschlossen, auch wenn das Application.Run des Main(Threads) beendet wird. So würde es also auch gehen.
Für das Öffnen eines neuen Forms ist es jedoch gar nicht nötig, einen neuen Thread zu öffnen und - da die Formulare hier seqentiell abgearbeitet werden - auch gar nicht sinnvoll. Und da meinen Vorschlag deshalb ohne Threads arbeitet, ist die genannte Änderung nötig.
herbivore
Hallo Massaka , herbivore
thausend Dank für euere Unterstützung! Es hat geklappt.
Gruss
andreas_sharp