Как организовать элементы управления в форме относительно друг друга и самой формы? - PullRequest
3 голосов
/ 04 марта 2011

У меня есть дочерняя форма в приложении MDI Windows Forms.Он имеет два элемента управления: ComboBox и TreeView, причем последний находится под первым.Оба элемента управления имеют одинаковую ширину.Как настроить их и свойства формы для достижения следующих целей:

  1. При изменении размера формы ширина обоих элементов управления должна быть равна ширине формы.
  2. Высота TreeView должна изменяться, чтобы заполнить все свободное пространство формы.

Ответы [ 3 ]

5 голосов
/ 04 марта 2011

Вы можете сделать так:

  1. В конструкторе форм расположите элементы управления так, как вы хотите, чтобы они выглядели
  2. Выберите ComboBox и установите для свойства Anchor значение Top, Left и Right
  3. Выберите TreeView и установите для свойства Anchor значения Top, Left, Right и Bottom
3 голосов
/ 04 марта 2011

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

Вот пример, который демонстрирует Combobox с Dock=Top и TreeView с Dock=Fill:

enter image description here

Если вы измените размеры формы, Combobox width и TreeView width / height будут соответственно изменены, что соответствует вашим конкретным требованиям.

1 голос
/ 04 марта 2011

Это делается с помощью свойства Anchor.Установите его правильно на всех элементах управления (combobox, treeview и usercontrol), и он будет растягиваться так, как вам нравится.

Свойство Dock аналогично, но оно также влияет на местоположение и своего рода "приклеивает" элемент управления к его элементу.поместите даже в форму дизайнера.

...