刷新窗口窗体
Posted
技术标签:
【中文标题】刷新窗口窗体【英文标题】:Refresh window form 【发布时间】:2022-01-10 12:55:18 【问题描述】:我有两个 WinForms:
admin.cs 这是一个 Windows.Forms.Form
addManager.cs 这是一个 Windows.Forms.UserControl
addManager userControl 在表单中admin.cs
在 admin.cs 我有一个刷新按钮,下面是它的代码:
if (admin.ActiveForm != null)
this.Dispose();
admin NewForm = new admin();
NewForm.Show();
现在,我决定去掉 admin.cs 上的刷新按钮,并将其代码移动到 中的另一个按钮addManager.cs
***addManager.cs***
private void btnAdd_Click(object sender, EventArgs e)
...
if (admin.ActiveForm != null)
this.Dispose();
admin NewForm = new admin();
NewForm.Show();
程序没有错误,但当前窗体没有关闭,而是出现了 NewForm,使其同时成为两个 Windows。左窗口是我想在显示 NewForm 时处理的旧窗口(右窗口) photo for reference
我想要做的是通过不同表单(userControl)的按钮自动刷新表单。
非常感谢任何帮助。
【问题讨论】:
【参考方案1】:您可以在按钮单击事件中这样做。先隐藏当前窗体,在 Closed 事件中关闭。
this.Hide();
admin newForm = new admin();
newForm.Closed += (s, args) => this.Close();
newForm.Show();
【讨论】:
我仍然得到相同的输出。它仍然显示当前形式。我所做的是将您的答案粘贴到 admin.cs 中的按钮单击事件中,并且从 addManager.cs 我所做的是像这样执行单击admin newForm = new admin(); newForm.btnRefresh.PerformClick();
以上是关于刷新窗口窗体的主要内容,如果未能解决你的问题,请参考以下文章