快速处理动态创建的控件(标签)

时间:2014-12-09 20:34:52

标签: vb.net winforms

我在Windows窗体中有很多动态创建的标签,近30 x 80件。

处理此控件的速度非常慢。我需要将近一秒的时间才能看到它的步骤。

我使用以下代码(处理名称以“var”开头的所有控件:

For i As Integer = dlg_main.Controls.Count - 1 To 0 Step -1
 If LCase(Left(dlg_main.Controls(i).Name, 3)) = "var" 
    dlg_main.Controls(i).Dispose()
 End If
Next

处理控件的速度更快吗?

2 个答案:

答案 0 :(得分:0)

一种选择是将标签放在面板中然后拆开面板。

Panel1.Dispose()

答案 1 :(得分:0)

问题已解决,请参阅如何声明和初始化:

模块mdl_main     私有pn1 As System.Windows.Forms.Panel

Public Sub ShowPanelAgain()
    pn1 = New System.Windows.Forms.Panel
    pn1.Name = "dynPanel1"
    dlg_Main.Controls.Add(pn1)
    pn1.AutoSize = True
    pn1.AutoScroll = True
End Sub

Sub PanelLöschen()
    Try
        If pn1.IsDisposed = False Then
            pn1.Dispose()
            dlg_Main.Text = "pn gelöscht"
        End If
    Catch ex As Exception
        MsgBox("Fehler: " & ex.Message)
    End Try
End Sub