滚动时面板上的背景图像闪烁

时间:2010-09-08 21:22:46

标签: vb.net visual-studio-2008

我在Windows窗体(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

2 个答案:

答案 0 :(得分:0)

当BackgroundImageLayout设置为Zoom时,似乎会发生这种情况。如果将其设置为Stretch,则可能会解决问题。如有必要,您可以在加载时和面板大小更改时调整图像大小以适合面板。

答案 1 :(得分:0)

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