Читать «ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание» онлайн - страница 514

Эндрю Троелсен

После этого мы рассмотрим процесс построения пользовательских диалоговых окон, а также роль наследования форм, которое позволяет создавать иерархии связанных типов Form. В завершение главы обсуждается возможность стыковки и закрепления элементов графического интерфейса и выясняется роль типов FlowControlPanel и TableControlPanel, предлагаемых в .NET 2.0.

Элементы управления Windows Forms

Пространство имен System.Windows.Forms содержит ряд типов, представляющих наиболее часто используемые элементы графического интерфейса, которые обеспечивают поддержку взаимодействия с пользователем в приложении Windows Forms. Многие элементы управления из тех, с которыми вы будете работать ежедневно (такими, например, являются Button, TextBox и Label), интуитивно совершенно понятны, но чтобы работать с другими, более "экзотическими" элементами управления и компонентами (например, с TreeView, ErrorProvider и TabControl), требуются дополнительные пояснения.

Из главы 19 вы узнали, что тип System.Windows.Forms.Control является базовым классом для всех таких элементов. Напомним, что Control обеспечивает возможность обрабатывать события мыши и клавиатуры, задавать физические размеры и позицию элементов в форме с помощью различных свойств (Height, Width, Left, Right, Location и т.п.), манипулировать цветами фона и переднего плана, задавать активный шрифт/курсор и т.д. Кроме того, базовый тип Control определяет члены, контролирующие возможность закрепления и поведение стыковки элемента (объяснения по поводу указанных возможностей будут даны в тексте этой главы позже).

При изучении материала данной главы помните о том, что рассматриваемые здесь элементы управления наследуют большинство своих функциональных возможностей от базового класса Control. Поэтому мы сосредоточимся (более или менее) на уникальных членах этих элементов. Следует понимать, что эта глава не пытается полностью описать абсолютно все члены абсолютно всех элементов управления (это задача документации .NET Framework 2.0 SDK). Однако я уверен, что после завершения изучения материала этой главы у вас не возникнет проблем в понимании тех элементов, которые здесь непосредственно описаны не были.

Замечание. В Windows Forms предлагается целый ряд элементов управления (DataGridView, BindingSource и т.д.), позволяющих отображать содержимое реляционных баз данных. Некоторые из этих элементов управления будут рассмотрены в главе 22 при обсуждении ADO.NET.

Добавление элементов управления в форму вручную

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