如何在WinForms不同表单之间保存和加载

xkrw2x1b  于 2022-11-16  发布在  其他
关注(0)|答案(1)|浏览(138)

我创建了不同的表单,单击后会显示在我的主面板中。

private void ButtonECM_Click(object sender, EventArgs e)
{
    this.panelDesktop.Controls.Clear();
    FrmECM FrmECM_Vrb = new FrmECM() { Dock = DockStyle.Fill, TopLevel = false, TopMost = true };
    FrmECM_Vrb.FormBorderStyle = FormBorderStyle.None;
    this.panelDesktop.Controls.Add(FrmECM_Vrb);
    FrmECM_Vrb.Show();
}

这将创建一个窗体示例。
问题:当我在不同的表单之间切换时(通过点击事件),它总是创建一个新的示例,我在表单中输入和使用的东西都消失了。
我是否可以检查表单是否已加载并切换回未更改的表单?

au9on6nz

au9on6nz1#

在我看来,当触发此事件时,您似乎正在清除窗体的所有示例。请使用窗体控件上的.Hide()方法隐藏窗体,而不是清除所有示例。然后调用.Show()方法再次显示窗体。
MS .隐藏文档:
https://learn.microsoft.com/en-us/dotnet/api/system.windows.forms.control.hide?view=windowsdesktop-6.0
MS .显示文档:
https://learn.microsoft.com/en-us/dotnet/api/system.windows.forms.control.show?view=windowsdesktop-6.0#system-windows-forms-control-show

相关问题