刷新表单的问题

时间:2012-07-25 15:54:52

标签: c#

我有一个带有标签A,B和C的表单。在 static void Main()中,我说:

Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Form1 form1 = new Form1();
Application.Run(form1);

Form1构造函数调用

InitializeComponent();
updateForm();

其中updateForm从远程计算机读取日志((FtpWebRequest)WebRequest)并相应地更新标签。

我想不断更新表单,因为远程日志文件每隔几分钟就会更改一次。

我尝试在main方法中调用while(true)循环中的form1.updateLog(),但表单不刷新。此外,form1.Refresh()似乎不起作用。

任何提示? 感谢。

1 个答案:

答案 0 :(得分:1)

当你在循环中执行此操作时,很可能在UI线程上。这意味着你经常告诉表格要重新绘制,但不要给它时间或机会这样做(记住:你正在阻止它会做的那个线程)。

而是使用计时器并从那里刷新,例如每100毫秒左右。