showdialog()与show的区别
showdialog就是显示有模式的窗体,showdialog后面的语句不会执行,直到显示的窗体被关闭。 show就是无模式的窗体,显示窗体后不论窗体是否关闭都执行show后面的语句。
-------------------------------------------------------------------------------------------------------------
面对多窗口的调用的时候,我们往往不喜欢窗口之间的随意切换,那样我们还有花费时间寻找我们要用的窗口,而且,一但出现问题,窗口的顺序也有可能被再次打乱,很是不顺手,那么我们怎么办呢? 我们可以将show方法转化为showdialog方法,顾名思义,showdialog是一个进行路经绑定的show方法,他是不可以自由切换的,换言之,就是,当你没有关闭你当前页的前提下,你是无法关闭该页面后面的任一页面的,它是当前唯一(路经打开)为true的。 而show方法由于未进行绑定,它所显示的各个窗口、对话框是可以相互切换,而不需要关闭当前窗口、对话框。但是他由于未进行绑定,所以每个由show方法打开的窗口的顺序是非固定的,如果遇到什么问题,由show方法打开的窗口的顺序可能会有很大的改变!
show()仅仅是显示出来窗口界面而已,也就是和你执行的结果在同一窗口显示,所显示的窗口可以在后台运行,而showDialog()是一个对话框窗口界面,执行结果以新窗口界面出现,不允许进行后台运行,就是你想编辑什么的时候,非得先关闭showDialog()窗口界面才可以进行其他操作.
show()是非模式窗体. showDialog()是模式窗体. 区别在于,以showDialog()打开的窗体,要等窗体关闭后才能操作其他窗体.而show()则不受此限制.
这是最经常的区别了, 还有一个我个人使用的心得,你可以了解
比如你先打开子窗体,想隐藏主窗体。 如果这个时候用Show的话,则会发生的事情是,打开子窗体的同时主窗体又显示出来,而使用ShowDialog()的时候主要当子窗体关闭的时候主窗体才会显示。
举个简单的例子,代码如下:
Form2 f2 = new Form2();
this.Visible = false;
f2.ShowDialog();
this.Visible= true;
这就是模态对话框的与Show的区别。
最新文章
- 【安装PHP】如何在openSUSE42.1下编译安装PHP7
- 疯狂Android讲义 - 学习笔记(四)
- NHibernate代码监视
- MATLAB的一些基础知识
- DP HDU1421
- 关于hasNextInt判断后无限循环输出else项的解决办法
- selenium源码分析-webdriver(二)
- andorid 远程存储中JDK和Volley的GET和POST方法
- Snapchat
- HNOI2008越狱(快速幂)
- hdu4670(树上点分治+状态压缩)
- 201621123040《Java程序设计》第12周学习总结
- byte在计算机中的存储方式--Double.byteValue()的输出结果思考
- 信步漫谈之Quartz—分布式调度(整合spring早期版本【低于spring3.1】)
- openssl中RSA数字签名的使用
- Linux内核及分析 第六周 分析Linux内核创建一个新进程的过程
- ASS字幕制作和压制教程
- 玩魔兽争霸无故退出 提示框显示";0x21101663";指令引用的";0x02704acc";内存该存不能为";read"; 确定就会终止程序
- Angular 学习笔记 Material
- Automapper实现自动映射
热门文章
- wap_supplicant介绍
- AJAX请求遭遇未登录和Session失效的解决方案
- iOS 进阶 第十一天(0411)
- KVM通过qemu实现USB重定向
- 针对谷歌默认最小字体12px的正确解决方案 (css、html)
- IE6兼容inline-block的方法
- [转载]C#中字典集合的两种遍历
- 当IIS挂的网站出现选 图片文件, 静态文件都打不开时, 可以试试新建一个应用程序池试试看...
- Eclipse对svn操作切换账号或更换svn地址方法
- Mongo常用操作