ОСТОРОЖНО МОШЕННИКИ! В последнее время в соиальных сетях учстились случаи педложения помощи в написании прогамм от лиц, прикрвающихся сайтом vscode.ru. Мы никогда не пишем первыми и не размещаем никакие материалы в псторонних группах ВК. Для связи с нами используйте исключительно эти контакт: vscoderu@yandex.ru, https://vk.com/vscode


Растянуть элементы на форме Windows Forms


В статье рассмотрим способ создания «резинового» интерфейса в формах Windows Forms и разберёмся, как растянуть элементы на форме при изменении размера окна программы.

Создадим в Visual Studio проект Windows Forms и разместим на форме следующие элементы управления:

  • Label
  • TextBox
  • RichTextBox
  • Button

Начальный интерфейс Windows Forms

Запустим программу и с помощью мыши попробуем увеличить размеры окна, потянув правый нижний угол формы. В результате получим следующее:

Растягивание интерфейса Windows Forms

Видим, что окно формы увеличилось в размере, но элементы управления никак не реагируют на данные изменения.

Теперь покажем, как создать адаптивный к изменениям размера окна интерфейс на форме Windows Forms.

Как растянуть элементы на форме Windows Forms

Для создания «резинового» интерфейса нужно воспользоваться свойствами элементов управления из категории Макет (Layout). А конкретно свойством Anchor.

В Windows Forms свойство Anchor определяет стороны контейнера (Top, Bottom, Left, Right) к которым привязывается элемент управления. При изменении размера контейнера расстояние между указанной стороной контейнера и ближайшей к ней стороне элемента управления остаётся неизменным.

Таким образом можно добиться растягивания и перемещения элементов в форме при изменении её размера.

В нашем случае контейнером для элементов управления является всё окно.

Зададим для TextBox значение атрибута Anchor = Top, Left, Right. Теперь расстояние между соответствующими сторонами ТекстБокса и окна будет неизменным. Так мы добьёмся изменения ширины контрола при изменении ширины окна.

Установка значения Anchor для TextBox


Для RichTextBox значение свойства Anchor сделаем равным Top, Bottom, Left, Right.

Установка значения Anchor для RichTextBox

У кнопки Button установим Anchor, как Top, Right.

Установка значения Anchor для Button

Теперь запустим программу и изменим размер окна: увидим, что элементы управления на форме растягиваются и меняют своё местоположение. Теперь интерфейс стал адаптированным к изменению размера окна.

Растянуть элементы на форме Windows Forms

Есть ещё один момент. Когда мы будем уменьшать мышью размер формы — контролы будут скрываться из поля зрения.

Элементы управления не видны на форме

Чтобы решить данную проблему, необходимо указать минимальный размер формы Windows Form в пикселях. Тем самым форму будет невозможно сделать меньше установленного размера.

Щёлкнем по форме и в окне свойств изменим параметр MinimunSize. Установим его равным текущему размеру формы в визуальном редакторе (Size).

Минимальный размер формы

Минимальный размер можно указать и меньшим — таким, при котором интерфейс хорошо выглядит и сохраняет свою функциональность. Нужные значения определяются экспериментально — для этого самостоятельно изменяйте размер формы.

4.8/5 - (21 голос)



Поделиться в соц. сетях:

Один комментарий к статье “Растянуть элементы на форме Windows Forms

  1. Антон

    Это супер! Давно искал решение для резинового макета приложения. Благодарю!

Добавить комментарий

Ваш адрес email не будет опубликован.