我在代码中这样写的:
private void btnStart_Click(object sender, System.EventArgs e)
{
Form2 fr = new Form();
string str1 = "1111";
string strTemp = "";
if (str1 == str2)
{
strTemp = "OK";
Messagebox.show("nihao");
}
else
{
fr.ShowDialog();
}
}
假如str1和str2相等,程序执行到Messagebox.show("nihao");就停顿不前,程序无应答,并且在进程管理其中又出现一个form。
但是如果我把Form2 fr = new Form();这句话放在
else
{
Form2 fr = new Form();
fr.ShowDialog();
}Messagebox.show("nihao");这句话就能正确执行,请问这是为什么啊?(其中Form2是工程中的另一个Form)
private void btnStart_Click(object sender, System.EventArgs e)
{
Form2 fr = new Form();
string str1 = "1111";
string strTemp = "";
if (str1 == str2)
{
strTemp = "OK";
Messagebox.show("nihao");
}
else
{
fr.ShowDialog();
}
}
假如str1和str2相等,程序执行到Messagebox.show("nihao");就停顿不前,程序无应答,并且在进程管理其中又出现一个form。
但是如果我把Form2 fr = new Form();这句话放在
else
{
Form2 fr = new Form();
fr.ShowDialog();
}Messagebox.show("nihao");这句话就能正确执行,请问这是为什么啊?(其中Form2是工程中的另一个Form)
解决方案 »
- 这是什么错误,怎么用了属性反而不好用
- session购物车怎么提交相同的ID商品
- 奇怪了,装了Visual Studio2008,找不到csc.exe
- vs2005中viewstate不识别
- stringcollection.tostring是啥样子的啊?
- 简单产生随机数的问题,给个算法就给分哦
- 复制datarow
- C#2005生成打包时提示dll文件受系统保护,要排除后才好打包
- ado.net 读取Excel时出现 找不到可安装的 ISAM。
- DATATABLE.DefaultView.Sort对数据表排序,为什么对字母大小写不能正确排序
- 使用XML创建Excel文档
- 用C#怎样拦截Close event,也就是当用户点击右上角的八叉时拦截那个event,然后不关闭程序,继续运行,就像MSN Messanger那样
else
{
Form2 fr = new Form();
fr.ShowDialog();
}
的形式编写代码因为若是(str1 == str2)为真,根本就用不到fr,所以也没有必要实例化他
因而在开始的地方就实例化fr纯粹浪费资源