我在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
处理控件的速度更快吗?
答案 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