Как закреплять и привязывать элементы управления (Windows Forms .NET)
Если вы разрабатываете форму, размер которой пользователь может изменить во время выполнения, элементы управления в форме должны правильно изменять размер и расположение. Элементы управления имеют два свойства, обеспечивающих их автоматическое размещение и изменение размера при изменении размера формы.
-
Закрепленные элементы управления заполняют края контейнера элемента управления — формы или контейнерного элемента управления. Например, проводник Windows закрепляет свой элемент управления TreeView в левой части окна и элемент управления ListView в правой части окна. Для режимам закрепления может быть задана любая сторона контейнера элемента управления или настроено заполнение оставшегося пространства контейнера.
Элементы управления закрепляются в обратном z-порядке, а свойство Dock взаимодействует со свойством AutoSize. Дополнительные сведения см. в разделе Автоматическое изменение размеров.
-
Когда изменяется размер формы привязанного элемента управления, этот элемент управления сохраняет расстояние до расположения привязки. Например, если у вас есть элемент управления TextBox, привязанный к левому, правому и нижнему краям формы, при изменении размера формы элемент управления TextBox изменяет размер по горизонтали, чтобы сохранить расстояние до правого и левого краев формы. Кроме того, элемент управления позиционирует себя по вертикали, чтобы его расположение всегда сохраняло расстояние до нижнего края формы. Если элемент управления не привязан и форма изменяется, положение элемента управления относительно краев формы изменяется.
Дополнительные сведения см. в разделе Размещение и компоновка элементов управления.
Закрепление элемента управления
Элемент управления закрепляется посредством задания его свойства Dock.
Примечание.
Унаследованные элементы управления должны быть Protected
, чтобы иметь возможность закрепления. Чтобы изменить уровень доступа элемента управления, установите его свойство Modifier в окне Свойства.
Использование конструктора
Используйте окно Свойства конструктора Visual Studio, чтобы задать режим закрепления для элемента управления.
Выберите элемент управления в конструкторе.
В окне Свойства выберите стрелку справа от свойства Dock.
Нажмите кнопку, представляющую край контейнера, у которого нужно закрепить элемент управления. Чтобы заполнить содержимым форму или контейнер элемента управления, выберите центральное поле. Выберите (нет), чтобы отключить закрепление.
Элемент управления автоматически изменяет размер в соответствии с границами закрепленного края.
Установка закрепления программным способом
Задайте свойство
Dock
для элемента управления. В этом примере кнопка закрепляется справа от контейнера:button1.Dock = DockStyle.Right;
button1.Dock = DockStyle.Right
Привязка элемента управления
Элемент управления привязывается к краю посредством задания для его свойства Anchor одного или нескольких значений.
Примечание.
Некоторые элементы управления, такие как ComboBox, имеют ограничение на высоту. Привязка элемента управления к нижней части формы или контейнера не может привести к превышению предела высоты элемента управления.
Унаследованные элементы управления должны быть Protected
, чтобы иметь возможность привязки. Чтобы изменить уровень доступа элемента управления, задайте его свойство Modifiers
в окне Свойства.
Использование конструктора
Используйте окно Свойства конструктора Visual Studio, чтобы задать привязанные края для элемента управления.
Выберите элемент управления в конструкторе.
В окне Свойства выберите стрелку справа от свойства Anchor.
Чтобы задать или отменить привязку, выберите верхнюю, левую, правую или нижнюю часть креста.
Установка привязки программным способом
Задайте свойство
Anchor
для элемента управления. В этом примере кнопка привязывается к правой и нижней сторонам контейнера:button1.Anchor = AnchorStyles.Bottom | AnchorStyles.Right;
button1.Anchor = AnchorStyles.Bottom Or AnchorStyles.Right
См. также
.NET Desktop feedback