2015-06-09 2 views
0

Моя форма содержит панель, которая используется для добавления/удаления нескольких пользовательских элементов управления (на основе выбора из меню). Прежде чем использовать эту панель, чтобы содержать каждый пользовательский элемент управления, я мог бы привязать и, следовательно, изменить размер каждого пользовательского элемента управления при изменении размера формы. Несмотря на правильное изменение размера панели с помощью формы, я не могу понять, как привязать элементы управления пользователя к панели, чтобы они также изменяли размер.Управление анкеровкой внутри панели

Пример панели в желтый, пользовательский элемент управления в красный цвет: http://gyazo.com/390f85587335efee4a9ec8b913ffce06

Любые предложения будут оценены.

disposeUCs() 

     Dim _UCAddNewRawMaterial As New UCAddNewRawMaterial 
     Panel1.Controls.Add(_UCAddNewRawMaterial) 
+0

Мы не имеем достаточно информации здесь, чтобы помочь вам. ** КАК ** Вы хотите, чтобы несколько (?) UserControls в пределах этой панели изменялись? Таким образом, они занимают равное пространство горизонтально, вертикально, в сетке? ... что-то еще? Взгляните на [FlowLayoutPanel] (https://msdn.microsoft.com/en-us/library/system.windows.forms.flowlayoutpanel%28v=vs.110%29.aspx) и [TableLayoutPanel] (https : //msdn.microsoft.com/en-us/library/system.windows.forms.tablelayoutpanel%28v=vs.110%29.aspx) для чего-то начать. –

+0

Можете ли вы показать код о том, как вы создаете элемент управления и добавляете его в панель? – mclark1129

+0

Я отредактировал вопрос, чтобы показать, как мои элементы управления пользователя добавлены в панель. DisposeUCs() просто удаляет текущий пользовательский элемент управления с панели, когда для просмотра выбран новый пользовательский элемент управления. Посмотрите ссылку на изображение, которую я предоставил в вопросе. – Nick

ответ

0

Это звучит, как вы будете только когда-либо один UserControl на панели в то время?

Если это так, просто DockStyle.Fill это:

Dim _UCAddNewRawMaterial As New UCAddNewRawMaterial 
_UCAddNewRawMaterial.Dock = DockStyle.Fill 
Panel1.Controls.Add(_UCAddNewRawMaterial) 
+0

Да, только один пользовательский элемент управления - это, похоже, сработало! Спасибо за помощь. – Nick

Смежные вопросы