AI智能
改变未来

C# 关掉当前界面,返回到上一界面,但不重新创建

关掉当前界面,返回到上一界面,但不重新创建新的窗体对象

  • 说明
  • 第一步(给Form_user定义一个Form变量)
  • 第二步(更改Form_user构造函数)
  • 第三步(Form_login中具体跳转代码)
  • 第四步(Form_user中具体跳转代码)

说明

我们以一个例子说明(登录窗体:

Form_login()

;用户窗体:

Form_user()

):
当我们制作了一个管理系统,其中含有登录功能,很多时候我们登录成功进入到用户界面,但此时我们需要退出用户,回到登录界面,我们可能会选择这样处理:

Form_user form_user = new Form_user();	// 实例化将要进入的窗体对象form_user.Show();	// 显示窗口this.Close();	// 关闭当前窗口

但是当我们想要回到登录界面时,我们同样使用以上方法。
此时我们会发现一个问题,每次跳转都需要新建一个对象,这样既费时有耗内存。
以下开始更好的方法:
在新建用户界面窗体时保存当前窗体对象,便于回跳

第一步(给Form_user定义一个Form变量)

Form_login form_login;

这个变量用于存储上一窗体信息。

第二步(更改Form_user构造函数)

public Form_user(Form_login form){InitializeComponent();form_login = form;	// form_login为第一步中的全局变量}

第三步(Form_login中具体跳转代码)

Form_user form_user = new Form_user(this);	// 实例化将要进入的窗体对象form_user.Show();	// 显示窗口this.Hide();	// 隐藏当前窗口,便于回跳

以上代码中第一句中含有参数

this

,表示当前

form_login

窗口。

第四步(Form_user中具体跳转代码)

form_login.Show();	// 为第一步中form_loginthis.Close();	// 关闭form_user
赞(0) 打赏
未经允许不得转载:爱站程序员基地 » C# 关掉当前界面,返回到上一界面,但不重新创建