如何刷新或清空 C# Windows Form?

6
这是我的应用程序录入表单。
点击“确定”按钮后,它将进入下一个表单进行进一步处理。我的第二个表单如下图所示。
在第二个表单中,我必须选择任何一个选项按钮,然后按下确定按钮。按下确定按钮后,我只需要调用一些函数,然后它将返回到Form1。但是,在几秒钟内,Form1没有得到控制。它看起来像是崩溃了,需要刷新。但我不知道如何刷新表单?请指导我解决这个问题...
它看起来像这样:

你能贴出一个代码,展示你是如何在哪里调用第二个窗体的吗? - Samich
你在第一个表单上有一些长时间运行的操作吗? - Samich
4个回答

6

呼叫

this.Invalidate();  

或者

this.Refresh();  

在更新表单上。


4

您可以通过以下方式重新绘制表单:

Form1.Invalidate();

或者

Form1.Refresh();
编辑:
Form1的同一线程上进行某些循环和操作可能会导致其停止响应。如果出现这种情况,您可以使用BackgroundWorker类来避免这种情况。

3
调用Invalidate方法不会强制同步绘制,如果要强制同步绘制,请在调用Invalidate方法后调用Update方法。当没有参数调用此方法时,整个客户区域将被添加到更新区域中。Control.Invalidate()如果可能,使用BeginUpdate()和EndUpdate()。

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接