#c_sharp #visual_studio
Как можно обеспечить пропорциональное масштабирование оконных приложений, написанных VS C#? Чтобы элементы окна, при его развертывании оставались на расстоянии, пропорциональном измененному размеру формы.
Ответы
Ответ 1
Используйте контролы из категории контейнеры; cкорей всего, вам понадобится TableLayoutPanel. С его помощью нужно будет разметить основной каркас формы, а размеры всех строк и столбцов задать в процентах. Далее, добавляем нужный контрол в ячейку таблицы и, если вы хотите масштабирования за счёт расстояния между контролами — устанавливаем свойство Anchor равным None. Если нужна масштабируемость по размеру — Dock равным Full. И, конечно, одной табличкой вы не ограничитесь. Скорей всего придётся использовать вложенные.Ответ 2
Вряд ли есть простой способ. Можно сделать так: создать массив координат контролов (например, по левому верхнему краю) на форме, переопределить обработчик WM_SIZING для формы, в обработчике пересчитать массив координат с помощью Graphics.TransformPoints и передвинуть контролы.
Комментариев нет:
Отправить комментарий