Поделиться через


Как закреплять и привязывать элементы управления (Windows Forms .NET)

Если вы разрабатываете форму, размер которой пользователь может изменить во время выполнения, элементы управления в форме должны правильно изменять размер и расположение. Элементы управления имеют два свойства, обеспечивающих их автоматическое размещение и изменение размера при изменении размера формы.

  • Control.Dock

    Закрепленные элементы управления заполняют края контейнера элемента управления — формы или контейнерного элемента управления. Например, проводник Windows закрепляет свой элемент управления TreeView в левой части окна и элемент управления ListView в правой части окна. Для режимам закрепления может быть задана любая сторона контейнера элемента управления или настроено заполнение оставшегося пространства контейнера.

    Форма windows, демонстрирующая различные режимы док-станции для элемента управления

    Элементы управления закрепляются в обратном z-порядке, а свойство Dock взаимодействует со свойством AutoSize. Дополнительные сведения см. в разделе Автоматическое изменение размеров.

  • Control.Anchor

    Когда изменяется размер формы привязанного элемента управления, этот элемент управления сохраняет расстояние до расположения привязки. Например, если у вас есть элемент управления TextBox, привязанный к левому, правому и нижнему краям формы, при изменении размера формы элемент управления TextBox изменяет размер по горизонтали, чтобы сохранить расстояние до правого и левого краев формы. Кроме того, элемент управления позиционирует себя по вертикали, чтобы его расположение всегда сохраняло расстояние до нижнего края формы. Если элемент управления не привязан и форма изменяется, положение элемента управления относительно краев формы изменяется.

    Форма Windows, демонстрирующая различные режимы привязки для элемента управления

Дополнительные сведения см. в разделе Размещение и компоновка элементов управления.

Закрепление элемента управления

Элемент управления закрепляется посредством задания его свойства Dock.

Примечание.

Унаследованные элементы управления должны быть Protected, чтобы иметь возможность закрепления. Чтобы изменить уровень доступа элемента управления, установите его свойство Modifier в окне Свойства.

Использование конструктора

Используйте окно Свойства конструктора Visual Studio, чтобы задать режим закрепления для элемента управления.

  1. Выберите элемент управления в конструкторе.

  2. В окне Свойства выберите стрелку справа от свойства Dock.

    Панель свойств Visual Studio для .NET Windows Forms с показанным свойством Dock.

  3. Нажмите кнопку, представляющую край контейнера, у которого нужно закрепить элемент управления. Чтобы заполнить содержимым форму или контейнер элемента управления, выберите центральное поле. Выберите (нет), чтобы отключить закрепление.

    Область свойств Visual Studio для .NET Windows Forms с расширенным свойством Dock.

Элемент управления автоматически изменяет размер в соответствии с границами закрепленного края.

Установка закрепления программным способом

  1. Задайте свойство Dock для элемента управления. В этом примере кнопка закрепляется справа от контейнера:

    button1.Dock = DockStyle.Right;
    
    button1.Dock = DockStyle.Right
    

Привязка элемента управления

Элемент управления привязывается к краю посредством задания для его свойства Anchor одного или нескольких значений.

Примечание.

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

Унаследованные элементы управления должны быть Protected, чтобы иметь возможность привязки. Чтобы изменить уровень доступа элемента управления, задайте его свойство Modifiers в окне Свойства.

Использование конструктора

Используйте окно Свойства конструктора Visual Studio, чтобы задать привязанные края для элемента управления.

  1. Выберите элемент управления в конструкторе.

  2. В окне Свойства выберите стрелку справа от свойства Anchor.

    Панель свойств Visual Studio для .NET Windows Forms с показанным свойством Привязки.

  3. Чтобы задать или отменить привязку, выберите верхнюю, левую, правую или нижнюю часть креста.

    Область свойств Visual Studio для .NET Windows Forms с расширенным свойством Привязки.

Установка привязки программным способом

  1. Задайте свойство Anchor для элемента управления. В этом примере кнопка привязывается к правой и нижней сторонам контейнера:

    button1.Anchor = AnchorStyles.Bottom | AnchorStyles.Right;
    
    button1.Anchor = AnchorStyles.Bottom Or AnchorStyles.Right
    

См. также