5.6. Компоненты .NET

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

Доступ к компонентам .NET можно получить из панели Toolbox (рис. 5.10). Если ее не видно, то нужно выполнить в меню команду View | Toolbox.

Рис. 5.10. Панель Toolbox с компонентами

Для вашего удобства все элементы управления сгруппированы по разделам. Вы можете создавать свои разделы и помещать в них любые компоненты, но для начала лучше оставить все по умолчанию, поскольку здесь все достаточно удобно продумано. В разделе All Windows Forms (Все Windows-формы) находятся все компоненты. Если вы забыли, в каком разделе искать нужный элемент управления, можете раскрыть этот раздел и найти нужный элемент в нем. Внутри разделов все компоненты отсортированы по именам.

Компоненты на форме можно перетаскивать мышью, визуально устанавливая их положение. Когда вы выделяете компонент, обратите внимание на точки, которые появляются вокруг контура выделения. В те стороны, на которых есть жирные точки, можно растягивать компонент. Например, выделите форму, и у нее на рамке выделения окажутся точки только справа и снизу. Это значит, что вы можете изменять высоту и ширину формы перемещением правого и нижнего краев формы.

Попробуйте установить на форму кнопку Button из раздела Common Controls (Общие элементы управления). Выделите ее и убедитесь, что вокруг кнопки появляются жирные точки во всех направлениях, а это значит, что с кнопкой можно делать все, что угодно.

Попробуйте теперь перетащить на форму компонент-метку Label. Выделите ее. Тут есть чему удивиться, потому что у этого компонента нет квадратов по контуру, а есть только маленький квадрат в левом верхнем углу компонента. Это значит, что у компонента нельзя изменять размеры, но можно изменять его положение. На самом деле изменять размеры можно, просто по умолчанию компонент создается в режиме авторазмера.

Все визуальные элементы управления содержат среди предков класс Control. Этот класс наделяет компоненты всеми необходимыми им свойствами и методами. Давайте пробежимся по основным свойствам компонентов, чтобы не повторяться в будущем, — тем более, что многие из них мы уже видели у формы:

  • Anchor — свойство позволяет определить, к какой стороне родительского компонента прикреплять компонент;
  • BackColor — цвет фона;
  • Cursor — курсор;
  • Dock — выравнивание;
  • Font — шрифт;
  • ForeColor — цвет переднего плана;
  • Height — высота элемента управления;
  • Left — левая позиция компонента относительно родителя;
  • Location — положение;
  • MaximumSize — максимальный размер элемента управления;
  • MinimumSize — минимальный размер элемента управления;
  • Name — название объекта, т. е. имя переменной для объекта элемента управ- ления;
  • Padding — отступы со всех сторон родительского компонента/формы;
  • Size — размер компонента: ширина и высота;
  • Top — позиция компонента по вертикали относительно родителя;
  • Visible — если равен true, то компонент виден, иначе нет;
  • Width — ширина компонента.

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

Как изменять прикрепление? Выделите свойство Anchor и щелкните по кнопке вызова выпадающего списка в редакторе свойств. Появится небольшое окно (рис. 5.11), в котором от центра в разные стороны идут полоски. Темные полоски говорят о том, что в эту сторону сделано прикрепление, а белые — о том, что прикрепления нет. Щелкайте по полоскам, чтобы устанавливать или убирать прикрепления.

Рис. 5.11. Окно установки якорей

Рис. 5.12. Окно выравнивания Dock

Еще одно свойство, на котором следует остановиться: Dock. Если щелкнуть по выпадающему списку в редакторе свойств для Dock, то появится маленькое окно, которое представляет собой небольшой компонент. Он разбит на секторы, как показано на рис. 5.12, только подписей на русском у вас не будет. Эти подписи я добавил в рисунок для удобства.

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

Некоторые компоненты могут прятать определенные свойства, но большинство, все же, отображает их.

Это бесплатная глава книги Библия C#. В новом издании эта глава переписана с учетом универсальных приложений Windows, а старая версия главы, которая не потеряла еще своей актуальности стала бесплатной и доступной всем.

Все исходные коды главы 5 Библии C#

Предыдущая глава

5.5. События на примере формы

О блоге

Программист, автор нескольких книг серии глазами хакера и просто блогер. Интересуюсь безопасностью, хотя хакером себя не считаю

Обратная связь

Без проблем вступаю в неразборчивые разговоры по e-mail. Стараюсь отвечать на письма всех читателей вне зависимости от страны проживания, вероисповедания, на русском или английском языке.

Пишите мне