애플리케이션을 종료하지 않고 로그인 성공 후 기본 양식 표시
Windows Forms 애플리케이션에서는 기본 양식을 닫으면 일반적으로 프로그램이 종료됩니다. 그러나 경우에 따라 애플리케이션을 종료하지 않고 로그인 양식을 닫고 기본 양식을 시작해야 할 수도 있습니다. 이 기사에서는 이 문제를 살펴보고 해결책을 제공합니다.
질문:
사용자가 로그인 양식과 기본 양식이라는 두 가지 양식이 포함된 Windows Forms 프로젝트를 만듭니다. 로그인에 성공한 후 목표는 로그인 양식을 닫고 기본 양식을 표시하는 것입니다. 그러나 Close() 메서드를 사용하여 로그인 양식을 닫으면 기본 양식이 열리지 않고 애플리케이션이 종료됩니다.
<code class="language-c#">public void ShowMain() { if (auth()) { var main = new Main(); main.Show(); this.Close(); } else { MessageBox.Show("Invalid login details."); } }</code>
해결책:
문제는 로그인 양식을 닫으면 애플리케이션도 닫힌다는 것입니다. 해결 방법에는 로그인 논리를 로그인 양식에서 Program.cs 파일로 이동하는 작업이 포함됩니다. 그런 다음 Application.Run()을 사용하여 로그인에 성공한 후 기본 폼을 시작합니다.
<code class="language-c#">static void Main() { LoginForm fLogin = new LoginForm(); if (fLogin.ShowDialog() == DialogResult.OK) { Application.Run(new MainForm()); } else { Application.Exit(); } }</code>
Program.cs에서 모달 로그인 양식(fLogin)을 생성하여 대화 상자로 표시합니다. 사용자가 유효한 자격 증명을 제공하면 ShowDialog()는 DialogResult.OK를 반환하고 Application.Run()을 통해 새 MainForm 인스턴스 생성을 트리거합니다. 그렇지 않으면 응용 프로그램이 종료됩니다(Application.Exit()).
위 내용은 앱을 닫지 않고 Windows Forms 애플리케이션에 로그인에 성공한 후 기본 양식을 표시하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!