Вещество в форме Windows перемещать при максимизации - C # - PullRequest
5 голосов
/ 30 сентября 2008

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

В основном моя проблема заключается в том, что когда я максимизирую свою программу, все элементы внутри окна (кнопки, текстовые поля и т. Д.) Остаются в одном и том же месте в окне, что приводит к большой пустой области рядом снизу и справа боковая сторона.

Есть ли способ заставить элементы программы растягиваться в масштабе?

Ответы [ 5 ]

12 голосов
/ 30 сентября 2008

Вы хотите проверить и правильно установить свойства Anchor и Dock для каждого элемента управления в форме. Свойство Anchor элемента управления сообщает, к каким сторонам формы (сверху, снизу, слева, справа) элемент управления «привязан». При изменении размера формы расстояние между элементом управления и его якорями останется неизменным. Это позволяет вам удерживать элемент управления в правом нижнем углу, например.

Свойство Dock указывает элементу управления заполнить всю родительскую форму или заполнить одну из ее сторон (снова сверху, снизу, слева или справа).

4 голосов
/ 30 сентября 2008

Свойства якоря и дока

0 голосов
/ 30 сентября 2008

Что касается макетов, я не совсем уверен, что вы имеете в виду, но я использую редактор GUI по умолчанию в Visual Studio 2008.

Существуют специальные панели типа «контейнер», которые можно прикрепить к форме, например FlowLayoutPanel и TableLayoutPanel. Эти типы контейнеров имеют дополнительное поведение макета.

Если вы обнаружите, что некоторые из ваших элементов управления по-прежнему не хотят вести себя во время изменения размера, используйте контекстное меню элемента управления, щелкнув правой кнопкой мыши, чтобы отобразить список предков элемента управления: его родитель, родительский элемент и т. Д. что проблемный элемент управления является потомком некоторого специального контейнера, который имеет свои собственные правила компоновки.

0 голосов
/ 30 сентября 2008

Существуют некоторые элементы управления панели макета, которые помогают вам сохранять пропорции при расширении / сжатии формы:

TableLayoutPanel
FlowLayoutPanel

0 голосов
/ 30 сентября 2008

Посмотрите на динамический макет: образец привязки и стыковки на http://msdn.microsoft.com/en-us/library/aa289756(VS.71).aspx

Это в VB, но концепции и свойства / методы, которые вам нужны, одинаковы в C #.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...