У меня две панели: panelA, panelB в панели: panelContainer. Как сделать панель А и панель В идти бок о бок, занимая 50% ширины каждого из панелей Контейнер?
С# Winforms панели бок о бок занимают 50% ширины каждый
Ответ 1
Используйте TableLayoutPanel с одной строкой (100%) и двумя столбцами (по 50%).
Ответ 2
Вместо панели можно использовать SplitContainer
. Установите IsSplitterFixed
в true, в режиме проектирования установите SplitPosition
на половину ширины разделителя и установите SplitterWidth
на 1. Убедитесь, что для параметра FixedPanel
установлено значение none. Затем во время выполнения он будет поддерживать соотношение ширины панелей.
Единственная проблема заключается в том, что вы не можете установить SplitterWidth
в ноль, так что всегда будет небольшое расстояние между панелями. Если это не проблема и если вам не понадобится panelContainer
, чтобы на самом деле быть панелью по какой-то причине, то как бы я это сделал.
Ответ 3
Проверьте свойство SplitterDistance. Переопределить изменение размера формы и установить это value = form.width/2;
Узнать больше. https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.splitcontainer.splitterdistance?view=netframework-4.8