我正面临一些形式隐藏问题。
实际上我有一个带有用户控件的表单。用户控件有提交按钮,当我点击它时,我希望用户控件以及包含它的表单都消失了。 我可以使用this.hide(),但它只隐藏用户控件而不是表单。
我创建了一个
form1 f1 = new form1();
f1.hide();
甚至尝试过
f1.close(),
但没有任何效果。 请帮忙
编辑: 这是实际的代码:
Input inp = new Input();
inp.Show();
它是调用输入表单的地方。在加载事件中,我调用usinput用户控件。
USinput usinp = new USinput();
然后在用户控件的提交按钮中,使用以下代码:
Input inpt = new Input();
inpt.Hide();
this.Hide();
Companies co = new Companies();
co.Show();
它显示新表单,用户控件已消失,但输入表单仍然存在。
答案 0 :(得分:0)
f1
并且没有名称冲突? 这绝对是一个问题。
编辑: 你的问题出在第一行。
输入inpt = new Input(); inpt.Hide(); this.Hide(); 公司合作新公司(); co.Show();
在UserControl中,您可以创建一个新表单。所以你有2个表格!第二个是永远不可见的。您必须向UserControl发送对表单的引用。这样,您总是使用相同的表单。
以下是如何从表单创建UserControl:
USinput usinp = new USinput(this); //Will send a reference of the form to the control
您的控件的构造函数将如下所示:
private Form parentForm;
public USinput(Input parentForm)
{
this.parentForm = parentForm;
}
您的提交按钮代码将包含以下内容:
parentForm.hide();