我試圖在 FlowPanel 內多次克隆面板...但它只克隆一次。
Dim NewFormConta1 As New Panel
NewFormConta1 = Panel1
PanelLateral.Controls.Add(NewFormConta1)
Dim NewFormConta2 As New Panel
NewFormConta2 = Panel1
PanelLateral.Controls.Add(NewFormConta2)
Dim NewFormConta3 As New Panel
NewFormConta3 = Panel1
PanelLateral.Controls.Add(NewFormConta3)
結果:

我需要的:

uj5u.com熱心網友回復:
因為這些賦值是參考賦值
NewFormConta1 = Panel1
NewFormConta2 = Panel1
NewFormConta3 = Panel1
所以你的“新”面板都參考了同一個面板。您只有一個面板,但有 4 個對它的參考。
' NewFormConta1 is a new panel
Dim NewFormConta1 As New Panel
' NewFormConta1 points to Panel1 so the new panel from the first line
' is not referenced anymore and will be garbage collected
NewFormConta1 = Panel1
' Panel1 is really added
PanelLateral.Controls.Add(NewFormConta1)
你如何填充Panel1?您可以以相同的方式填充每個 NewFormConta。
或者另一個想法是制作一個包含面板和標簽的用戶控制元件。您可以使用用戶控制元件中的公共屬性修改標簽屬性。然后就這樣做
Dim NewFormConta1 As New UserControl1
PanelLateral.Controls.Add(NewFormConta1)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/395535.html
