我有一個表單(Form1),它有30個控件。 當我點擊一個按鈕時,我想刪除這30個按鈕並將其他控件放在窗體上。 現在,我的問題是,這是緩慢的。刪除一組控件
我有我想要刪除的控件的列表,我用For Each對它們進行遍歷。
Private Sub ClearControls()
'removing the controls from Me.Controls
For Each Control As Control In ListToDelete
Me.Controls.Remove(Control)
Next
ListToDelete = New List(Of Control)
End Sub
現在,如果你看的形式,看到控制過得去1.刪除1這個動作需要約0.4秒(使用內置的秒錶計時),這就是太長。
是否有解決方案以更快的方式刪除控件,或者只能刪除控件1?
也許一個重要的事實是,一切都與數據庫連接。 這些控件是由我自己定義的類(TableDrawer)創建的,它創建一個矩形或圓形(取決於數據庫中的信息)。 我將自制控件添加到窗體中,當我想要刪除它們時,需要0.4秒才能獲取窗體上的其他控件 - 也包含信息超出我的數據庫。
希望這清除了一些東西,我希望你能幫助我......它真的有走快一點(我希望能得到0.1秒或更低)
但我不想刪除所有的控件。有一些按鈕誰不能被刪除... – Vella
我測試了你的解決方案,只是爲了檢查它是否更快,然後我的解決方案,它同樣快(讀:慢)...所以我認爲我不能去任何現在我快了。 – Vella