Размеры элементов и их позиционирование в контейнере

Позиционирование

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

Также мы можем установить позицию элемента в коде:

1 2 3 4 private void Form1_Load(object sender, EventArgs e) { button1.Location = new Point(50, 50); }

Установка размеров

С помощью свойства Size можно задать размеры элемента:

Дополнительные свойства MaximumSize и MinimumSize позволяют ограничить минимальный и максимальный размеры.

Установка свойств в коде:

1 2 3 4 button1.Size = new Size { Width = 50, Height = 25 }; // установка свойств по отдельности button1.Width = 100; button1.Height = 35;

Свойство Anchor

Дополнительные возможности по позиционировании элемента позволяет определить свойство Anchor. Это свойство определяет расстояние между одной из сторон элемента и стороной контейнера. И если при работе с контейнером мы будем его растягивать, то вместе с ним будет растягиваться и вложенный элемент.

По умолчанию у каждого добавляемого элемента это свойство равно Top, Left:

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

Мы можем задать четыре возможных значения для этого свойства или их комбинацию:

· Top

· Bottom

· Left

· Right

Например, если мы изменим значение этого свойства на противоположное - Bottom, Right, тогда у нас будет неизменным расстояние между правой и нижней стороной элемента и формой.

При этом надо отметить, что данное свойство учитывает расстояние до границ контейнера, а не формы. То есть если у нас на форме есть элемент Panel, а на Panel расположена кнопка, то на кнопку будет влиять изменение границ Panel, а не формы. Растяжение формы будет в этом случае влиять только, если оно влияет на контейнер Panel.

Чтобы задать это свойство в коде, надо использовать перечисление AnchorStyles:

1 2 3 button1.Anchor = AnchorStyles.Left; // задаем комбинацию значений button1.Anchor = AnchorStyles.Left | AnchorStyles.Top;

Свойство Dock

Свойство Dock позволяет прикрепить элемент к определенной стороне контейнера. По умолчанию оно имеет значение None, но также позволяет задать еще пять значений:

· Top: элемент прижимается к верхней границе контейнера

· Bottom: элемент прижимается к нижней границе контейнера

· Left: элемент прижимается к левой стороне контейнера

· Right: элемент прикрепляется к правой стороне контейнера

· Fill: элемент заполняет все пространство контейнера

Панель вкладок TabControl и SplitContainer

TabControl

Элемент TabControl позволяет создать элемент управления с несколькими вкладками. И каждая вкладка будет хранить некоторый набор других элементов управления, как кнопки, текстовые поля и др. Каждая вкладка представлена классом TabPage.

Чтобы настроить вкладки элемента TabControl используем свойство TabPages. При переносе элемента TabControl с панели инструментов на форму по умолчанию создаются две вкладки - tabPage1 и tabPage2. Изменим их отображение с помощью свойства TabPages:

Нам откроется окно редактирования/добавления и удаления вкладок:

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: