У меня есть пользовательский элемент управления с надписью, прикрепленной к верхней части, и панелью, которая закреплена как заливка, панель находится перед надписью:
Я использую Windows.Forms.Design.ParentControlDesigner
как конструктор, чтобы пользовательский элемент управления действовал как контейнер элемента управления:
Public Class UserControlDesigner
Inherits Windows.Forms.Design.ParentControlDesigner
Public Overrides Sub Initialize(component As System.ComponentModel.IComponent)
MyBase.Initialize(component)
If (Me.Control Is GetType(SPnLabelPanel)) Then
Me.EnableDesignMode(CType(Me.Control, SPnLabelPanel).DropZone, "DropZone")
End If
End Sub
End Class
У меня есть свойство DropZone
, которое возвращает panel
:
<Designer(GetType(UserControlDesigner))>
Public Class SPnLabelPanel
...
<Category("Appearance")>
<DesignerSerializationVisibility(DesignerSerializationVisibility.Content)>
Public ReadOnly Property DropZone As Panel
Get
Return mainPanel
End Get
End Property
End Class
все работает нормально во время разработки и элементы управления добавляются в пользовательский элемент управления:
, но во время выполнения элементы управления перемещаютсятак же, как размер этикетки Height
где моя проблема?я должен добавить какое-то свойство для достижения этого?