C# 更改活动窗体以显示其他窗体
我有一个C# 更改活动窗体以显示其他窗体,c#,visual-studio,C#,Visual Studio,我有一个表单1,还有一个我添加的表单Form1在开始时由program.cs运行。我需要隐藏Form1并通过按下按钮显示optionsform private void submitPassword_Click(object sender, EventArgs e) { options optionForm = new options(); optionForm.Show(); } 上面的代码打开顶部的选项表单,但我需要它来替换当前表单。
表单1
,还有一个我添加的表单Form1
在开始时由program.cs运行。我需要隐藏Form1
并通过按下按钮显示options
form
private void submitPassword_Click(object sender, EventArgs e)
{
options optionForm = new options();
optionForm.Show();
}
上面的代码打开顶部的选项表单,但我需要它来替换当前表单。如何实现这一点?在显示新窗体之前,使用
this.Close()
隐藏当前窗体,并确保您使用的是无参数应用程序。运行,以便在关闭主窗体时程序不会关闭。类似的解决方案,其中一个窗体调用并作用于另一个窗体。。。比如你可以做一个类似的过程。。。把你的第一个表格传给第二个。。。然后显示第二个。。。然后,可以隐藏第一个表单(通过this.HIDE())。然后,在第二个表单中,当您单击任意按钮选择您的选择,并需要返回到第一个表单时,您可以使用传递到第二个表单的原始表单引用来重新显示它,例如在单击第二个表单时
private void submitPassword_Click(object sender, EventArgs e)
{
options optionForm = new options();
optionForm.Show();
this.Hide();
}
this.PreservedForm.Show(); // re-show original form
this.Close(); // and CLOSE this second form...
您可以使用“隐藏”和“显示”方法:
如何使用无参数应用程序。运行??我当前运行表单的代码是:Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);Application.Run(新Form1())
ReplaceApplication.Run(newform1())代码>带有新表单1().Show();Application.Run()代码>。谢谢你,它工作的很好。。。如果你不介意的话,你能回答我的最后一个问题吗。我如何拥有一个主窗体并在其中加载其他窗体?如果您希望其他窗体完全位于主窗体内,请在主窗体上设置IsMdiContainer
,并在显示之前将子窗体上的MDIParent
设置到MDI容器(主窗体)中。谢谢,这很有帮助。我挣扎了一个小时才找到答案。
private void submitPassword_Click(object sender, EventArgs e)
{
options optionForm = new options();
this.Hide();
optionForm.Show();
}