2016-09-29 61 views
-1

我有两种形式form1和form2 我试图从form2隐藏form1。 如何做到这一点?
我不想隐藏form1,除非我在form2中完成我的过程。如果我在form2中完成我的过程,那么我的form1将关闭/隐藏。如何隐藏当前窗体的其他窗体C#

下面的代码不起作用。 。 。

 Form1 Frm = new Form1(); 
     Frm.Hide(); 

 Form1 Frm = new Form1(); 
     Frm.Visible = false; 
+0

您不应该创建新表单。相反,你应该隐藏你现有的'form1'。假设'form1'是变量,指向需要隐藏的表单实例,就像'form1.Hide()'那样做。 –

+0

感谢您的评论。如何隐藏它?如果im在form2?我不能直接把Form1.Hide(); –

+0

显然,Form1是你的表单类的名字。但是你有没有在form2中提供这个类的任何实例?您提供的代码不足以对其进行假设。你能展示更多相关的代码吗? –

回答

0

你应该使用Application.OpenForms收藏,找到你的开放的形式在那里并调用.Hide()方法就可以了。

+0

非常感谢。你可以关闭这个问题。谢谢 –

0

我用这个代码,它的工作原理。谢谢@PedroLuz!

var frm = Application.OpenForms.Cast<Form>().Where(x => x.Name == "Form1").FirstOrDefault(); 
       if (null != frm) 
       { 
        frm.Hide(); 
       } 
相关问题