c# .net winform 怎么实现在打开一个新窗体时,隐藏就窗体;关闭新窗体时,恢复显示旧窗体?

如题所述

在Form1中,点击button1,显示Form2

private void button1_Click(object sender, EventArgs e)
{
//隐藏当前窗口
this.Visible = false;
Form2 f2 = new Form2();
//显示Form2
f2.ShowDialog();  
//显示当前窗口 
this.Visible = true;
}

追问

那关闭新窗体时,恢复旧窗体的显示呢?

追答

Form2显示采用了Dialog模式,也就是,只有关闭了Form2 ,才会执行f2.ShowDialog()后的语句 this.Visible = true。 而 this.Visible = true 将使Form1再次可见

追问

果然是的,只不过关闭第二个窗口时,windows 任务栏,可以看到明确的一个 窗口关闭 和 一个 窗口 打开。

追答

是的,上述过程在任务栏上会有所显示。

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-10-12
form1的代码
form2 frm2 = new form2();
frm2.show();
this.visible=false;

form2的代码
form1 frm1 = new form1();
frm1.show();
this.visible=false;追问

这样是可以达到效果,但是这样关闭程序时只能释放最后一个new 实例的资源 , 不能释放前面new 实例的资源。

追答

form2的关闭按钮写
Application.Exit();

c# .net winform 怎么实现在打开一个新窗体时,隐藏就窗体;关闭新窗体时...
在Form1中,点击button1,显示Form2 private void button1_Click(object sender, EventArgs e){\/\/隐藏当前窗口this.Visible = false;Form2 f2 = new Form2();\/\/显示Form2f2.ShowDialog(); \/\/显示当前窗口 this.Visible = true;}

C#Winform 怎么实现隐藏主窗体,关闭子窗体后又回到主窗体?
m1为主窗体 m2为子窗体 在m1中.this.visible=false;\/\/在m2中定义一个变量,用于记忆主窗体;public Form ParentForm; \/\/用公共变量或者属性都可以 \/\/把当前窗体送给子窗体记忆;m2.ParentForm=this;m2.Show();\/\/在m2关闭时;this.ParentForm.Visible=true;...

C# winform 关闭窗体后在打开 如何让打开的窗体还是原窗体 且打开的窗...
假设在窗口form1中打开form2.在form1中保留form2的引用 private Form2 form2 = new Form2(); private void button1_Click(object sender, EventArgs e) { form2.Show(); } form2中添加windowsClosing事件,里面这样写:private void Form2_FormClosing(object sender, FormClosingEventArg...

在C#里,怎样显示已经隐藏的窗体?
通过网上查找资料和认真研读C# winform 方面相关的书籍发现,窗体有Visible属性,设置为true窗体将显示出来,现将具体代码粘贴如下:打开新的窗体Form2时隐藏原来的窗体Form1 Form2 fm = new Form2(this);this.Hide();\/\/隐藏现在这个窗口 fm.Show() ;\/\/新窗口显现 关闭新的窗体Form2时显示原来的窗体...

C#中在一个窗体中点击弹出另一个窗体,同时关闭本窗体
点击按钮后this.Hide();new Form2().Show();隐藏后要让他显示的话 再次调用控件的Show()方法就好了

c#:winform如何让一堆控件平时隐藏,在点击触发时才 显示出来?如图。
每个控件都有一个属性值Visibility是控制这个,有三个属性值,Visible是默认属性值可见的,Hidden是隐藏不占空间,如果是个button控件就不能点击,collapsed是隐藏但是占空间,如果是个button控件就依旧可以在那个位置点击但是看不见,只需创建个事件控制这个属性值就可以达到你要的效果了 ...

C#Winform中,怎么在关闭一个窗体时刷新另一个窗体,比如说我在客户信息...
你可以给子窗口关闭是给一个返回值,父窗口判断返回值 父窗口代码 Form2 f = new Form2();if (f.ShowDialog() == DialogResult.OK){ \/\/刷新 } 子窗口代码 private void Form2_FormClosing(object sender, FormClosingEventArgs e){ this.DialogResult = DialogResult.OK;} 分享 ...

c# winform 如何在用ShowDialog()打开另一个窗体的时候关闭本窗体。
试试下面的代码,用Show();哦~~--- Form2 f2 = new Form2();f2.Show();this.Hide();

c# .net winform 如何 实现渐隐渐出的效果 就是打开的时候效果是渐出...
\/\/隐藏窗口,缺省则显示窗口 public const Int32 AW_ACTIVATE = 0x00020000;\/\/激活窗口。在使用了AW_HIDE标志后不能使用这个标志 public const Int32 AW_SLIDE = 0x00040000;\/\/使用滑动类型。缺省则为滚动动画类型。当使用AW_CENTER标志时,这个标志就被忽略 public const Int32 AW_BLEND = 0x...

C# winform中实现暂停,结束,实时刷新父窗体数据?
实现思路:在A窗体上写个方法:public void setText(string value){ textbox1.text=value } B窗体中声明一个委托 public delegate void GetTextDel(string value);public delegate Seter; \/\/这个写在类,里面哦!!然后修改B窗体的构造函数:public B( GetTextDel del){ ...Seter=del;} 在t...

相似回答