2010-09-08 116 views
1

我有一个窗口面板(Visual Studio 2008),它有一个背景图像(书架)。 当滚动图像闪烁,并没有重绘,所以看起来很糟糕 - 我试着创建一个新的对象使用双缓冲,但这没有效果,有什么建议吗?滚动时面板闪烁背景图片

Public Class DoubleBufferPanel 
Inherits Panel 

Public Sub New() 

Me.DoubleBuffered = True 
SetStyle(ControlStyles.AllPaintingInWmPaint Or _ 
ControlStyles.DoubleBuffer Or ControlStyles.ResizeRedraw Or ControlStyles.UserPaint, True) 
UpdateStyles() 

End Sub 
End Class 
+0

尝试使用PictureBox - 工作正常,但标签不能透明,当我需要一个picturebox时。 – madlan 2010-09-09 08:55:04

回答

0

这似乎发生在BackgroundImageLayout设置为缩放时。如果将其设置为Stretch,那可能会解决问题。如有必要,您可以在加载时和面板大小发生变化时调整图像大小以适应面板。

0

我使用了停靠的图片框,而不是标签,我直接将图片添加到图片。