2011-09-07 104 views
1

我有Form1,其中包含一些与png图像pictureboxes。当我隐藏Form1,然后使用Form1.Show()再次显示它时,我会看到一个白色框,而不是1秒内的png图像......但我仍然可以看到它。奇怪的是,同一个Form1中的其他较大的图像会立即加载......而这个需要几毫秒的加载时间。这可以通过缓存内存中的图像或..?PictureBox缓慢加载Form.Show()

Click to view a screenshot

+0

可能重复的[如何解决用户控件中的闪烁](http://stackoverflow.com/questions/2612487/how-to-fix-the-flickering-in-user-controls) –

回答

2

尝试使用SuspendLayout()& ResumeLayout(假),这样的形式不会改变它的布局,直到图像加载。 通话

this.SuspendLayout(); 

展前(),并设置在picturebox.LoadCompleted事件boolians为true,并调用

this.ResumeLayout(false); 

当所有的人都是如此。