Berjaya Beralih dari Log Masuk ke Borang Utama dalam C#
Dalam aplikasi C# berbilang bentuk, cabaran biasa adalah peralihan dengan lancar daripada borang log masuk ke borang permohonan utama tanpa menutup aplikasi terlebih dahulu. Masalah timbul kerana borang log masuk sering bertindak sebagai pam mesej utama aplikasi. Menutupnya secara tidak sengaja menamatkan gelung mesej aplikasi, menghalang borang utama daripada muncul.
Kunci untuk menyelesaikan masalah ini ialah mengurus kitaran hayat aplikasi daripada fail Program.cs
, dan bukannya membiarkan borang log masuk mengawalnya. Ini melibatkan menunjukkan borang log masuk sebagai dialog modal. Dialog modal beroperasi dalam gelung mesej yang berasingan, jadi menutupnya tidak menjejaskan gelung aplikasi utama. Keadaan aplikasi kemudiannya ditentukan oleh DialogResult
borang log masuk.
Ini penyelesaiannya:
<code class="language-csharp">static void Main() { LoginForm loginForm = new LoginForm(); if (loginForm.ShowDialog() == DialogResult.OK) { Application.Run(new MainForm()); } else { Application.Exit(); } }</code>
Kaedah Main
yang disemak ini mengendalikan aliran aplikasi. Borang log masuk dipaparkan secara modal (ShowDialog()
). Jika log masuk berjaya (DialogResult.OK
), borang utama dilancarkan menggunakan Application.Run()
. Jika tidak, Application.Exit()
menutup aplikasi dengan anggun. Ini memastikan borang log masuk bertindak sebagai titik masuk terkawal ke aplikasi utama.
Atas ialah kandungan terperinci Bagaimana untuk Mengelakkan Menutup Borang Log Masuk C# daripada Menamatkan Permohonan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!