经典问题 C#隐藏和显示窗体

简介:

http://zhidao.baidu.com/question/82711899.html

C#隐藏和显示窗体

 悬赏分:10 -  解决时间:2009-1-18 13:28
Main方法启动窗体A,现在点击窗体A的一个按钮,打开窗体B,这时窗体A隐藏。当关闭窗体B时,窗体A再显示出来!
我只知道隐藏是this.Visible = false;那么如何当窗体B关闭时自动执行this.Visible = true;呢? 
问题补充:
请“314674839”说明白,怎么写? 
“ kyhx123”说的a.high确实可以隐藏当前窗体,但是至于显示刚才隐藏的那个窗体不明白应该写在什么地方?
“cnfczn”写的方法没看明白哎...俺是初入C# 
“flag5”写的方法确实已经实现我的要求,想问下this.DialogResult他在B窗体赋值可以在A窗体里使用?它的值不会因为当前窗体已经死亡而销毁?还是另有他因?麻烦帮忙解说下,谢谢!
提问者:  额_为何

最佳答案

使用模式对话框ShowDialog方式打开窗体B,当窗体B关闭时必然要返回一个DialogResult,默认为none,类似于openfiledialog和savefiledialog

在窗体A的按钮点击事件中写 
Form2 form2 = new Form2(); 
this.Hide(); 
if (form2.ShowDialog() == DialogResult.OK) 
{ 
this.Show(); 
} 
在窗体B的关闭事件中写 
private void Form2_FormClosing(object sender, FormClosingEventArgs e) 
{ 
this.DialogResult = DialogResult.OK; 
} 

如果你想通过窗体B的一个按钮来关闭窗体B,就可以在关闭按钮的点击事件中写 
this.Close(); 
this.DialogResult = DialogResult.OK; 

够清楚了吧! 

回答者: flag5 -

本文转自火地晋博客园博客,原文链接:http://www.cnblogs.com/yelaiju/archive/2010/08/26/1808950.html,如需转载请自行联系原作者
目录
相关文章
|
29天前
|
Java 数据库 C#
C#winforms实现windows窗体人脸识别
C#winforms实现windows窗体人脸识别
29 0
|
6月前
|
关系型数据库 MySQL C#
C# winform 一个窗体需要调用自定义用户控件的控件名称
给用户控件ucQRCode增加属性: //二维码图片 private PictureBox _pictureBoxFSHLQrCode; public PictureBox PictureBoxFSHLQrCode {   get { return _pictureBoxFSHLQrCode; }   set { this.pictureBoxFSHLQrCode = value; } } 在Form1窗体直接调用即可: ucQRCode uQRCode=new ucQRCode(); ucQRCode.PictureBoxFSHLQrCode.属性= 要复制或传给用户控件上的控件的值
36 0
|
4月前
|
JavaScript Linux C#
【傻瓜级JS-DLL-WINCC-PLC交互】1.C#用windows窗体控件创建.net控件
【傻瓜级JS-DLL-WINCC-PLC交互】1.C#用windows窗体控件创建.net控件
65 0
|
4月前
|
C# Windows
C#安装“Windows 窗体应用(.NET Framework)”
C#安装“Windows 窗体应用(.NET Framework)”
50 0
|
4月前
|
C# 数据安全/隐私保护
C# 窗体之间参数互相传递的两种方法与使用
C# 窗体之间参数互相传递的两种方法与使用
|
10月前
|
C# 数据安全/隐私保护
ApeForms | C# WinForm窗体控件平滑减速运动
在桌面软件开发中,有时会需要控制窗体或控件移动以实现某些界面效果,比如幻灯片换页、侧面的展开栏等。 通常情况下我们会使用Timer以每隔一段时间修改一下坐标位置的方式来实现目标对象的位移效果,但通过这个方式实现的动效存在几个问题: 匀速运动效果生硬; 运动过程中不便灵活改变运动状态(如侧栏展开一半时令其收起); 动效多时需要创建多个Timer对象,不易管理且占用资源; ApeForms中为控件和窗体提供了平滑运动的扩展方法,很好的解决了这些问题。不仅是坐标的平滑运动,还有控件\窗体尺寸的平滑变化、透明度的平滑变化。允许在变化的中途随时更改目标坐标\尺寸\透明度,且使用共享的Timer
11248 1
ApeForms | C# WinForm窗体控件平滑减速运动
|
C# Windows 容器
C#面向对象程序设计课程实验二: 实验名称:Windows 窗体程序
C#面向对象程序设计课程实验二: 实验名称:Windows 窗体程序
C#面向对象程序设计课程实验二: 实验名称:Windows 窗体程序
|
C#
C#中获得窗体的句柄
C#中获得窗体的句柄
223 0
C#编程学习19:mdi窗体中子窗体不能重复打开的三种实现方式
C#编程学习19:mdi窗体中子窗体不能重复打开的三种实现方式
C#编程学习19:mdi窗体中子窗体不能重复打开的三种实现方式
|
数据库 C#
C#编程学习18:使用多文档窗体框架利用DataGridView对Access数据表进行增删改及导出excel操作
C#编程学习18:使用多文档窗体框架利用DataGridView对Access数据表进行增删改及导出excel操作
C#编程学习18:使用多文档窗体框架利用DataGridView对Access数据表进行增删改及导出excel操作