在Windows窗体之间切换时闪烁效果

时间:2018-04-03 08:12:02

标签: c# winforms

enter image description here从主窗体切换到后台工作人员设置数据的另一种窗体时出现问题。切换时闪烁。

在调试时,我的第二个表单看起来像这样。

backgroundWorker = new BackgroundWorker();
backgroundWorker.DoWork += LoadFixedAssetListFromHorizonForTable;
backgroundWorker.RunWorkerCompleted += LoadFixedAssetListFromHorizonForTableCompleted;
backgroundWorker.RunWorkerAsync();

if (backgroundWorker.IsBusy)
{
    loadingForm.ShowForm("Loading...");
}

mainMenuForm.Hide();
fixedAssetListForm.Show();

但是如果改变代码。表格不闪烁,只有形状有[1]图像等清晰区域0.5秒。

fixedAssetListForm.SuspendLayout();

mainMenuForm.Hide();
fixedAssetListForm.Show();

Thread.Sleep(500);
fixedAssetListForm.ResumeLayout();

1 个答案:

答案 0 :(得分:0)

我通过以下方式修复: 1)在brackground worker中删除了UI组件更新 2)第二部分错误是在Visual Studio中,当VS未最小化UI渲染无法正常工作时,在最小化或构建工作正常。