C# 关闭另一个窗体问题,Close();不起作用
我在 form1 上有此代码,
TimerMode f2 = new TimerMode();
f2.show();
现在我尝试在某个时间点使用此代码,但没有任何反应? Cmd = 正在关闭
public void DoActions(string Cmd)
{
switch(Cmd){
case"Open":
TimerMode f2 = new TimerMode();
f2.show()
break;
case"Closing":
f2.Close();
break;
}
}
你知道为什么它没有关闭吗?
我真正想要的是关闭它。
在vb6中我用这个
unload form2
I have this code on form1
TimerMode f2 = new TimerMode();
f2.show();
now I'm trying to use this code in some point in time, but nothing happens?
Cmd = Closing
public void DoActions(string Cmd)
{
switch(Cmd){
case"Open":
TimerMode f2 = new TimerMode();
f2.show()
break;
case"Closing":
f2.Close();
break;
}
}
do you have any idea why its not closing?.
what I really want it to close it.
in vb6 I use this
unload form2
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
最有可能是线程问题。尝试一下:
如果这不起作用,请使用以下修改:
Most probably a threading issue. Try this:
If that doesn't work, use below modification:
我只是花了几个小时想知道为什么我的表单无法关闭。事实证明,我忘记检查
“调试”->“异常”下的所有内容,
因此其中一个事件处理程序默默地抛出了一个 NullPointerException,否则该异常会被框架捕获。我想将事件参数的 Cancel 属性设置为 true 并随后将其设置为 false 显然不起作用(当我修复 NullPointer 时,一切都再次正常工作。)。
I just spent hours wondering why my form wont close. Turns out, I forgot to check everything under
Debug->Exceptions
so one of the eventhandlers silently threw a NullPointerException that got caught by the Framework otherwise. I guess that sets the Cancel property of the event arguments to true and setting it to false afterwards does obviously not do the trick (When I fixed the NullPointer, everything worked normal again.).