내 usercontrol은 디자인 타임에 부모 폼 클래스 내부에서 컨트롤을 정의 (선언 및 초기화)하고 싶습니다. 예를 들어, UserControl을 (또는 관련 디자이너 클래스)과 같이 부모의 형태로 패널 "에 Panel1"을 선언 할 수 있어야한다 :내 usercontrol을 사용하여 컨트롤을 디자인 타임에 부모 폼으로 정의하는 방법?
Partial Class Form1
Inherits System.Windows.Forms.Form
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.MyUserControl1 = New MySolution.MyUserControl
Me.Panel1 = New System.Windows.Forms.Panel
Me.SuspendLayout()
' '
'MyUserControl1
'
Me.MyUserControl1.Controls.Add(Me.Panel1)
Me.MyUserControl1.Location = New System.Drawing.Point(50, 50)
Me.MyUserControl1.Name = "MyUserControl1"
Me.MyUserControl1.Size = New System.Drawing.Size(102, 102)
Me.MyUserControl1.TabIndex = 0
'
'Panel1
'
Me.Panel1.Location = New System.Drawing.Point(1, 1)
Me.Panel1.Name = "Panel1"
Me.Panel1.Size = New System.Drawing.Size(100, 100)
Me.Panel1.TabIndex = 1
'
'Form1
'
Me.ClientSize = New System.Drawing.Size(399, 262)
Me.Controls.Add(Me.MyUserControl1)
Me.Name = "Form1"
Me.Text = "Form1"
Me.ResumeLayout(False)
End Sub
Friend WithEvents MyUserControl1 As MySolution.MyUserControl
Friend WithEvents Panel1 As System.Windows.Forms.Panel
End Class
참고 :이 선언 동적이어야한다. 나는 내가 할 수있는 "Panel1"내 usercontrol 속성을 추가하여 얻을 수 있지만 내가 필요한 것은 코드 내에서이 선언을 추가하는 것입니다 속성으로 항목을 제공하지 않습니다.
이 기능이있는 기본 제공 Winforms 컨트롤에는 TabControl 및 ListView가 있습니다. 이 시나리오를 시도해보십시오. 디자이너의 양식에 TabControl을 추가하고 디자이너가 생성 한 양식 파일을 보면 TabPage1 및 TabPage2가 양식 코드 내에서 선언되고 초기화되었음을 알 수 있습니다. 다른 탭을 추가 한 다음 디자이너가 생성 한 파일을 다시 참조하면 TabControl 디자이너가 TabPage3을 정의 된 항목에 추가하고 TabControl에서 해당 TabPage를 삭제하며 해당하는 선언 및 초기화가 파일에서 삭제 된 것을 확인할 수 있습니다 소스 코드.
내 사용자 정의 컨트롤 및/또는 해당 디자이너 내에서 어떻게 구현할 수 있습니까? 도움 주셔서 감사합니다. 사용 함수를 통해 가능