2014-01-10 34 views
1

當我啓動我的窗體時,它必須加載很多usercontrols並將數據綁定到每個窗體。這會導致表單在顯示之前需要延遲幾秒鐘。在流佈局面板中逐個加載控件並在添加時顯示它們的最佳方式是什麼?Visual Basic平滑加載很多控件

+0

您使用的是哪個版本的Visual Basic? –

+0

Visual Basic 2013 express。我現在所做的是先載入表單,然後在添加每個控件後調用公用子程序來加載使用panel.refresh的控件。這似乎現在起作用。這是做這件事的好方法,還是有更有效的方法來做到這一點? – Simeon

回答

5

「繪製」窗體上的控件花費的時間是導致此問題的主要原因。調用Refresh()可能只會使問題變得更糟。

解決方案是暫停所有框架的佈局邏輯,直到初始化所有控件。

Private Sub InitializeControls() 
    Me.SuspendLayout() 
    ' ... 
    ' ... 
    ' ... 
    Me.ResumeLayout() 
End Sub 

編輯

我的回答假設,無論您的數據源綁定到不是瓶頸。 如果是這樣,您將通過使代碼異步獲得更多。

+0

沒有綁定發生得很快,我會嘗試這種方法。謝謝 – Simeon