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的区别。

最新文章

  1. 【安装PHP】如何在openSUSE42.1下编译安装PHP7
  2. 疯狂Android讲义 - 学习笔记(四)
  3. NHibernate代码监视
  4. MATLAB的一些基础知识
  5. DP HDU1421
  6. 关于hasNextInt判断后无限循环输出else项的解决办法
  7. selenium源码分析-webdriver(二)
  8. andorid 远程存储中JDK和Volley的GET和POST方法
  9. Snapchat
  10. HNOI2008越狱(快速幂)
  11. hdu4670(树上点分治+状态压缩)
  12. 201621123040《Java程序设计》第12周学习总结
  13. byte在计算机中的存储方式--Double.byteValue()的输出结果思考
  14. 信步漫谈之Quartz—分布式调度(整合spring早期版本【低于spring3.1】)
  15. openssl中RSA数字签名的使用
  16. Linux内核及分析 第六周 分析Linux内核创建一个新进程的过程
  17. ASS字幕制作和压制教程
  18. 玩魔兽争霸无故退出 提示框显示"0x21101663"指令引用的"0x02704acc"内存该存不能为"read" 确定就会终止程序
  19. Angular 学习笔记 Material
  20. Automapper实现自动映射

热门文章

  1. wap_supplicant介绍
  2. AJAX请求遭遇未登录和Session失效的解决方案
  3. iOS 进阶 第十一天(0411)
  4. KVM通过qemu实现USB重定向
  5. 针对谷歌默认最小字体12px的正确解决方案 (css、html)
  6. IE6兼容inline-block的方法
  7. [转载]C#中字典集合的两种遍历
  8. 当IIS挂的网站出现选 图片文件, 静态文件都打不开时, 可以试试新建一个应用程序池试试看...
  9. Eclipse对svn操作切换账号或更换svn地址方法
  10. Mongo常用操作