一:form.Show()和form.ShowDialog()的区别
a.
任何窗体(派生于基类Form的类),都可以以两种方式进行显示。
//非模式窗体
From qform=new Form();
qform.Show();
//模式窗体
Form qform=new Form();
qform.ShowDialog();
b.
Show方法的调用会立即返回,新窗体显示的同时Show方法调用语句后面的代码会得到执行,没有在当前活动窗体和新窗体间建立任何关系
ShowDialog方法的调用会被阻塞,直到新窗体关闭,ShowDialog方法调用语句后面的代码才能得到执行。只有当建立的新窗口关闭之后,原有窗体才能重新获得控制权。即如果不关闭新窗口,将无法对原活动窗 口进行任何操作。
二:新建一个form
例题二:
Form2里有个字段:public bool isload{get;set;}
form1里有个click事件,如下:
form2 f2=new form2;
f2.showDialog();
f2里有个closing事件,
f2.isload=true;
Form2里的isload的值是多少?
结果:isload还是默认值,没有改变。因为f2继承了form2的字段,f2.isload=true只是将子窗口的字段置为true,而父窗口的字段根本没有变化,一定要分清是在哪个窗口里进行操作,分清是哪个窗口的属性,是不是继承过来的。
三:MessageBox.Show()的常见用法
a.给消息框加上一个标题
b.根据消息框的选择,使用if条件判断,要执行什么操作
b.1(根据消息框的选择,使用if条件判断,要执行什么操作)可以加一个图标
b.2(根据消息框的选择,使用if条件判断,要执行什么操作,有一个图标)有默认的焦点
b.3(根据消息框的选择,使用if条件判断,要执行什么操作,有一个图标,有默认的焦点)按钮反向显示
b.4(根据消息框的选择,使用if条件判断,要执行什么操作,有一个图标,有默认的焦点)添加help按钮
c.