这是我的计划:
{
statement1;
...
background.Visbile = true;
...
statementx;
}
当我运行这个程序时,它停在background.Visible = true;声明。谁知道为什么?
更多信息:
background是TableLayoutPanel对象。
'stop'表示程序冻结,不要运行到下一个语句。
我无法调试此程序,只能写日志。申请只是没有进入下一行。
答案 0 :(得分:1)
您的代码可能存在跨线程访问问题。您可能会抛出一个异常,但由于您没有调试,它可能会被其他地方的代码吞没,而不会显示给您,从而使您的应用程序显示为冻结。
如果您在代码中使用了Threads或BackgroundWorkers,则应通过检查是否InvokeRequired
,然后调用Invoke
or BeginInvoke
来对UI组件执行操作。