在VB.net中加载时如何防止控件闪烁?

时间:2013-03-09 10:17:54

标签: windows vb.net controls flicker

我目前正面临着当前Windows应用程序的问题。这是我的问题视频。

Flickering Problem

正如您所看到的,每次单击某些按钮并加载控件(选项卡控件和面板)时,它们都会闪烁,看起来很烦人。我怎么能摆脱这个?我已经尝试将DoubleBuffer设置为true但仍然无效。有什么帮助吗?

我也在load事件中执行suspendlayout()和resumelayout()但仍然无效。或许是因为我错误地编码了它。这是我的代码:

Private Sub frmAdminPanel_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        lblUser.Text = currentUser
        Me.pnlOverview.SuspendLayout()
        Me.tabPayment.Visible = False
        Me.tabClientReporting.Visible = False
        Me.btnNewEntry.Visible = False
        Me.btnPayment.Visible = False
        setOverview()
        Me.pnlOverview.Visible = True
        Me.pnlOverview.ResumeLayout()
    End Sub

2 个答案:

答案 0 :(得分:1)

请尝试使用SuspendLayoutResumeLayout,而不是BeginUpdateEndUpdate

答案 1 :(得分:0)

如果操作UI的表单的Load事件中有任何代码,那么您应该尝试使用SuspendLayout()和ResumeLayout()来防止闪烁。