gpt4 book ai didi

c# - 如果只关闭一个窗口,如何防止应用程序终止?

转载 作者:行者123 更新时间:2023-11-30 21:08:51 26 4
gpt4 key购买 nike

我试图在新创建的表单之间切换,但如果我看到在关闭旧屏幕之前创建了一个新屏幕,如下所示,整个应用程序将退出;

初始创建

static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Login());
}

此登录屏幕会创建一个新窗口,目前我正在隐藏屏幕以保持应用程序运行;

new MainScreen(uID, this).Show();
this.Hide();

在 MainScreen 中,我有一个“更改用户”按钮,这意味着我需要创建一个新的登录屏幕,但下面的代码只是退出了整个正在运行的应用程序;

Login newLoginForm = new Login(this);
mainLoginForm.Close();

我是不是以完全错误的方式设计了这个,或者我只是没有使用正确的方法?!任何帮助都会很棒。

最佳答案

当您关闭第一个登录表单时,您的应用程序将从 Run(new Login()) 退出所以你应该从 Run(new MainScreen()) 开始,在此表单的构造函数或 Form_Load 中调用您的登录名。

static void Main() 
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new MainScreen());
}

public MainScreen()
{
Login loginForm = new LoginForm();
if(loginForm.ShowDialog() == DialogResult.Cancel)
Application.Exit();
InitializeComponent();
}

关于c# - 如果只关闭一个窗口,如何防止应用程序终止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9353410/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com