В VS2010 с таргетингом на Framework 4.0 у меня есть UserControl, который содержит TableLayoutPanel с пустой второй строкой.
Можно ли добавлять элементы во вторую строку с помощью конструктора Windows Forms или мне нужно делать все это с помощью кода?
РЕДАКТИРОВАТЬ: В ответ на комментарий Ханса Пассанта, связанный вопрос ссылается на UserControl, используемый внутри другого элемента управления. Я задаю вопрос о унаследованных элементах управления.
Я создал следующий тестовый код, где TestControl - это UserControl, содержащий TableLayoutPanel с именем «TableLayoutPanel1»:
Imports System.ComponentModel
Imports System.Windows.Forms.Design
<Designer(GetType(testDesigner))>
Public Class TestControl
End Class
Public Class testDesigner
Inherits ControlDesigner
Public Overrides Sub Initialize(component As System.ComponentModel.IComponent)
MyBase.Initialize(component)
Dim X As TestControl = CType(component, TestControl)
EnableDesignMode(X.TableLayoutPanel1, "TableLayoutPanelX")
End Sub
End Class
Создание следующего класса в новом файле:
Public Class TestInheritedControl
Inherits TestControl
End Class
создает элемент управления, который при просмотре в конструкторе содержал TableLayoutPanel с именем «TableLayoutPanel1», который не редактируется конструктором. Это ситуация, описанная в моем первоначальном вопросе, которая не решена.
Создание нового UserControl, не наследуя ни от одного из предыдущих UserControls, а затем поместив в него TestControl, создает экземпляр TestControl с редактируемой конструктором TableLayoutPanel с именем «TestControl1.TableLayoutPanelX».
Есть ли способ сделать класс TestInheritedControl
, показанный выше, редактируемым для дизайнера?