我对 Compact Framework 中的表单绘制有一个奇怪的问题。我有一个登录对话框,它基本上是一个使用 ShowDialog 在另一个顶部打开的小表单。当刷卡时,登录对话框应该关闭,然后执行一些登录任务,然后应该激活它后面的表单。问题是登录对话框后面的表单没有被刷新,因此登录对话框直到后面的表单被某些用户操作刷新后才会被删除。这可能是由于登录任务部分进行的繁重处理,但我还没有找到解决这个问题的方法。
基本上,在执行繁重的登录任务之前,我想要一种强制应用程序关闭对话框并重新绘制所有内容的方法。我尝试了许多刷新方法,但没有任何运气:
Form loginDialog = new Form();
DialogResult result = loginDialog.ShowDialog();
loginDialog.Dispose();
//I've tried everything at this point to get the form to refresh before performing
//login tasks
this.Refresh();
this.Invalidate();
Application.DoEvents();
PerformHeavyLoginTasks();
有谁知道可能出了什么问题?谢谢