我试图在以下代码中找出 tmpTabPages 的生命周期。让我们假设表单有一个名为 MyTabControl 的空 TabControl,即有一个名为 NameCollection 的字符串集合。
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
For Each itm In NameCollection
Dim tmpTabPage as New TabPage(itm.toString)
'Add Controls to tmpTabPage
MyTabControl.TabPages.Add(tmpTabPage)
Next
End Sub
由于 tmpTabPage 的范围是 For/Next 块,通常它的生命周期会一直到块结束,对吧?但是,由于它被添加到具有块之外范围的集合中,它是否获得与集合相同的生命周期,或者在这种情况下是 MyTabControl?最后,如果我调用 MyTabControl.TabPages.Clear 集合中的 tmpTabPages 是否会被销毁,或者它们会坐在那里占用内存?