Класс Control
Класс Control является базовым для всех отображаемых элементов, то есть элементов, которые составляют графический интерфейс пользователя, например кнопок, списков, полей ввода и форм. Класс Control реализует базовую функциональность интерфейсных элементов. Он содержит методы обработки ввода пользователя с помощью мыши иклавиатуры, определяет размер, положение, цвет фона идругие характеристики элемента. Для каждого объекта можно определить родительский класс, задав свойство Parent, при этом объект будет иметь, например, такой же цвет фона, как и его родитель (речь идет не о наследовании, а о взаимоотношениях объектов во время выполнения программы, например, если на форме размещена кнопка, форма является родительским объектом по отношению к кнопке).
Наиболее важные свойства класса Control перечислены в табл. 14.2, методы — в табл. 14.3.
Таблица 14.2.Основные свойства класса Control
Anchor Определяет, какие края элемента управления будут привязаны
к краям родительского контейнера. Если задать привязку всех краев, элемент будет изменять размеры вместе сродительским
BackColor, Определяют параметры отображения рабочей области формы:
BackgroundImage, Font, цвет фона, фоновый рисунок, шрифт, цвет текста, вид
ForeColor, Cursor указателя мыши
Bottom, Right Координаты нижнего правого угла элемента. Могут устанавливаться
также через свойство Size
Top, Left Координаты верхнего левого угла элемента. Эквивалентны свойству
Bounds Возвращает объект типа Rectangle (прямоугольник), который определяет
размеры элемента управления
ClientRectangle Возвращает объект Rectangle, определяющий размеры рабочей области
ContextMenu Определяет, какое контекстное меню будет выводиться при щелчке на
элементе правой кнопкой мыши
Dock Определяет, у какого края родительского контейнера будет отображаться
Location Координаты верхнего левого угла элемента относительно верхнего левого угла
контейнера, содержащего этот элемент, в виде структуры типа Point.
Структура содержит свойства X и Y
Height, Width Высота и ширина элемента
Size Высота и ширина элемента в виде структуры типа Size. Структура содержит
свойства Height и Width
Created, Disposed, Возвращают значения типа bool, определяющие текущее
Enabled, Focused, состояние элемента: создан, удален, использование
Visible разрешено, имеет фокус ввода, видимый
Handle Возвращает дескриптор элемента (уникальное целочисленное значение,
ModifierKeys Статическое свойство, используемое для проверки состояния
модифицирующих клавиш (Shift, Control, Alt). Возвращает результат в виде
MouseButtons Статическое свойство, проверяющее состояние клавиш мыши. Возвращае
результат в виде объекта типа MouseButtons
Opacity Определяет степень прозрачности элемента управления. Может изменяться от
0 (прозрачный) до 1 (непрозрачный)
Parent Возвращает объект, родительский по отношению к данному (имеется в виду н
базовый класс, а объект-владелец)
Region Определяет объект Region, при помощи которого можно управлять
очертаниями и границами элемента управления
TabIndex, TabStop Используются для настройки последовательности перемещения с помощью
клавиши Tab по элементам управления, расположенным на форме
Focus Установка фокуса ввода на элемент (в элемент, имеющий фокус ввода,
направляется ввод пользователя с клавиатуры)
GetStyle, SetStyle Получение и установка флагов управления стилем элемента. Используются
значения перечисления Control Styles (см. далее)
Hide, Show Управление свойством Visible (Hide — скрыть элемент, Show — отобразить
Invalidate Обновление изображения элемента путем отправки соответствующего
сообщения в очередь сообщений. Метод перегружен таким образом, чтобы
можно было обновлять не всю область, занимаемую элементом, а лишь ее
ОnХХХХ Методы-обработчики событий (OnMouseMove, OnKeyDown, OnResize,
OnPaint и т. п.), которые могут быть замещены в производных классах
Refresh Обновление элемента и всех его дочерних элементов
SetBounds, Управление размером и положением элемента SetLocation, SetClientArea

В табл. 14.4 перечислена небольшая часть событий, определенных в классе Control.
Таблица 14.4. Некоторые события класса Control
Событие Описание
Click, DoubleClick, MouseEnter, MouseLeave, События от мыши MouseDown, MouselUp,
KeyPress, KeyUp, KeyDown События от клавиатуры
BackColorChanged, ContextMenuChanged, События изменения элемента
Control Класс
Определение
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Задает свойства, методы и события, общие для всех элементов управления » target=»_blank»>сервером ASP.NET.
Примеры
В следующем примере демонстрируется пользовательский » target=»_blank»>серверный элемент управления, производный от Control класса. InnerContent Класс переопределяет Control.Render метод, проверяет наличие у класса дочерних элементов управления на странице и определяет, является ли первый дочерний элемент управления литералом. Если выполняются оба этих условия, переопределенный метод записывает строку HTML
в сообщение:, содержимое элемента управления Literal и закрывающий
В этом примере имеется текстовое поле, принимающее вводимые пользователем данные, что является потенциальной угрозой безопасности. По умолчанию данные, вводимые пользователем на веб-страницах ASP.NET, проверяются на наличие скриптов и HTML-элементов. Дополнительные сведения см. в разделе Общие сведения об использовании сценариев.
Комментарии
ControlКласс является базовым классом для всех » target=»_blank»>серверных элементов управления ASP.NET, включая пользовательские элементы управления, пользовательские элементы управления и страницы. ASP.NET страницы — это экземпляры Page класса, который наследует от Control класса и обрабатывает запросы файлов с расширением. aspx.
ControlКласс может быть напрямую или косвенно использован в качестве части пользовательского интерфейса для веб-приложения, поэтому следует изучены, чтобы обеспечить соблюдение рекомендаций по написанию безопасного кода и обеспечению безопасности приложений.
Конструкторы
Инициализирует новый экземпляр класса Control.
Свойства
Возвращает конкретный адаптер браузера для элемента управления.
Возвращает или задает относительно приложения виртуальный каталог объекта Page или UserControl, который содержит этот элемент управления.
Возвращает элемент управления, который содержит привязку данных элемента управления.
Возвращает значение, которое указывает, созданы ли дочерние элементы управления » target=»_blank»>серверного элемента управления.
Получает идентификатор элемента управления для HTML-разметки, созданной ASP.NET.
Возвращает или задает алгоритм, используемый для создания значения свойства ClientID.
Возвращает значение символа разделителя, используемого в свойстве ClientID.
Возвращает объект HttpContext, связанный с » target=»_blank»>серверным элементом управления для текущего веб-запроса.
Возвращает объект ControlCollection, который представляет дочерние элементы управления для указанного элемента управления » target=»_blank»>сервера в иерархии пользовательского интерфейса.
Возвращает ссылку на контейнер именования, если контейнер именования реализует класс IDataItemContainer.
Возвращает ссылку на контейнер именования, если контейнер именования реализует класс IDataKeysControl.
Возвращает значение, указывающее, используется ли элемент управления на поверхности разработки.
Возвращает или задает значение, указывающее, применяются ли темы к этому элементу управления.
Получает или задает значение, указывающее запрашивающему клиенту, сохраняет ли » target=»_blank»>серверный элемент управления состояние представления и состояние представления своих дочерних элементов управления.
Возвращает список делегатов обработчиков событий элемента управления. Это свойство доступно только для чтения.
Возвращает значение, которое указывает на наличие сохраненных параметров состояния представления у дочернего элемента » target=»_blank»>серверного элемента управления.
Возвращает или задает программный идентификатор, назначенный » target=»_blank»>серверному элементу управления.
Возвращает символ, используемый для разделения идентификаторов элементов управления.
Возвращает значение, указывающее, имеют ли элементы управления в этом элементе управления состояние элемента управления.
Возвращает значение, отражающее сохранение изменений в состояние представления » target=»_blank»>серверного элемента управления.
Возвращает значение, указывающее, используется ли состояние представления для этого элемента управления.
Возвращает значение, указывающее, участвует ли элемент управления в загрузке состояния представления ID вместо индекса.
Возвращает ссылку на контейнер именования элемента управления, создающий уникальное пространство имен для различения » target=»_blank»>серверных элементов управления с одинаковыми значениями свойства ID.
Возвращает ссылку на экземпляр Page, содержащий » target=»_blank»>серверный элемент управления.
Возвращает ссылку на родительский элемент управления » target=»_blank»>серверного элемента управления в иерархии элементов управления страницы.
Возвращает значение, которое задает версию ASP.NET, с которой совместим созданный HTML.
Возвращает сведения о контейнере, который содержит текущий элемент управления при визуализации на поверхности конструктора.
Возвращает или задает обложку, применяемую к элементу управления.
Возвращает или задает ссылку на шаблон, содержащий этот элемент управления.
Возвращает виртуальный каталог Page или UserControl, содержащий текущий » target=»_blank»>серверный элемент управления.
Возвращает уникальный идентификатор » target=»_blank»>серверного элемента управления в иерархии.
Возвращает или задает значение, указывающее, проверяет ли элемент управления полученный из браузера клиентский ввод на предмет потенциально опасных значений.
Возвращает словарь сведений о состоянии, позволяющих сохранять и восстанавливать состояние представления » target=»_blank»>серверного элемента управления при нескольких запросах одной и той же страницы.
Возвращает значение, указывающее, является ли объект StateBag нечувствительным к регистру.
Возвращает или задает режим состояния представления данного элемента управления.
Получает или задает значение, указывающее, отрисовывается ли » target=»_blank»>серверный элемент управления как пользовательский интерфейс на странице.
Методы
Вызывается после добавления дочернего элемента управления в коллекцию Controls объекта Control.
Уведомляет » target=»_blank»>серверный элемент управления, что элемент XML или HTML был проанализирован, и добавляет элемент в » target=»_blank»>серверный элемент управления объекта ControlCollection.
Применяет свойства стиля, определенные в таблице стилей страницы, к элементу управления.
Запускает трассировку во время разработки данных отрисовки.
Собирает сведения о » target=»_blank»>серверном элементе управления и доставляет их свойству Trace, которое отображается при включенной на странице трассировке.
Удаляет сведения о состоянии элемента управления для дочерних элементов управления » target=»_blank»>серверного элемента управления.
Удаляет сведения о состоянии элемента управления и состоянии представления для всех дочерних элементов » target=»_blank»>серверного элемента управления.
Удаляет сведения о состоянии представления для всех дочерних элементов » target=»_blank»>серверного элемента управления.
Задает для свойства ClientIDMode текущего экземпляра элемента управления и любых его дочерних элементов управления значение Inherit.
Вызывается платформой страницы ASP.NET для уведомления » target=»_blank»>серверных элементов управления, использующих составную реализацию, о необходимости создания дочерних элементов управления, содержащихся в них для обратной передачи или отрисовки.
Создает новый объект ControlCollection для хранения дочерних элементов управления (литеральных и » target=»_blank»>серверных) » target=»_blank»>серверного элемента управления.
Привязывает источник данных к вызываемому » target=»_blank»>серверному элементу управления и всем его дочерним элементам управления.
Привязывает источник данных к вызванному » target=»_blank»>серверному элементу управления и всем его дочерними элементами управления с возможностью вызова события DataBinding.
Привязывает источник данных к дочерним элементам управления » target=»_blank»>серверного элемента управления.
Включает » target=»_blank»>серверный элемент управления для выполнения окончательной чистки до освобождения памяти.
Завершает трассировку во время разработки данных отрисовки.
Определяет наличие у » target=»_blank»>серверного элемента управления дочерних элементов управления. Если дочерних элементов управления нет, они будут созданы.
Создает идентификатор для элементов управления, которые не имеют назначенного идентификатора.
Определяет, равен ли указанный объект текущему объекту.
Выполняет поиск » target=»_blank»>серверного элемента управления с заданным параметром id в текущем контейнере именования.
Задает фокус ввода на элемент управления.
Возвращает данные времени разработки для элемента управления.
Служит хэш-функцией по умолчанию.
Возвращает URL-адрес, соответствующий набору параметров маршрута.
Возвращает URL-адрес, соответствующий набору параметров маршрута.
Возвращает URL-адрес, соответствующий набору параметров маршрута и имени маршрута.
Возвращает URL-адрес, соответствующий набору параметров маршрута и имени маршрута.
Возвращает объект Type для текущего экземпляра.
Возвращает часть с префиксом свойства UniqueID указанного элемента управления.
Определяет наличие у » target=»_blank»>серверного элемента управления дочерних элементов управления.
Возвращает значение, указывающее, регистрируются ли события для элемента управления или каких-либо дочерних элементов управления.
Определяет наличие у » target=»_blank»>серверного элемента управления только текстового содержимого.
Восстанавливает сведения о состоянии элемента управления предыдущего запроса страницы, сохраненные методом SaveControlState().
Восстанавливает сведения о состоянии представления из предыдущего запроса страницы, сохраненного методом SaveViewState().
Извлекает физический путь, к которому ведет виртуальный путь (абсолютный или относительный).
Создает неполную копию текущего объекта Object.
Определяет, передается ли событие » target=»_blank»>серверного элемента управления вверх по иерархии » target=»_blank»>серверных элементов управления пользовательского интерфейса страницы.
Возвращает Stream, используемое для чтения файла.
Присваивает родительскому элементу управления все источники события и сведения о них.
Вызывается после удаления дочернего элемента управления из коллекции Controls объекта Control.
Отправляет содержимое » target=»_blank»>серверного элемента управления в предоставленный объект HtmlTextWriter, который записывает содержимое для отрисовки в клиенте.
Выводит содержимое дочерних элементов » target=»_blank»>серверного элемента управления в предоставленный объект HtmlTextWriter, который записывает это содержимое для подготовки к просмотру на клиенте.
Выводит содержимое » target=»_blank»>серверного элемента управления в указанный объект HtmlTextWriter и сохраняет сведения о трассировке элемента управления, если трассировка включена.
Выводит » target=»_blank»>серверный элемент управления в указанный объект HtmlTextWriter, используя указанный объект ControlAdapter.
Возвращает адаптер элемента управления, отвечающий за отрисовку определенного элемента управления.
Возвращает URL-адрес, который может использоваться браузером.
Преобразует URL-адрес в адрес, доступный для клиента.
Сохраняет любые изменения состояния » target=»_blank»>серверного элемента управления, произошедшие после отправки страницы обратно на » target=»_blank»>сервер.
Сохраняет любые изменения состояния просмотра » target=»_blank»>серверного элемента управления, произошедшие после отправки страницы обратно на » target=»_blank»>сервер.
Задает данные времени разработки для элемента управления.
Назначает делегата обработчика событий для преобразования » target=»_blank»>серверного элемента управления и его содержимого для просмотра в родительский элемент управления.
Задает данные трассировки для трассировки данных отрисовки во время разработки, используя ключ данных трассировки и значение данных трассировки.
Задает данные трассировки для трассировки данных отрисовки во время разработки, используя трассируемый объект, ключ данных трассировки и значение данных трассировки.
Возвращает строку, представляющую текущий объект.
Вызывает отслеживание изменений состояния представления » target=»_blank»>серверного элемента управления для сохранения в объекте StateBag » target=»_blank»>серверного элемента управления. Этот объект доступен с помощью свойства ViewState.
События
Происходит при привязке » target=»_blank»>серверного элемента управления к источнику данных.
Происходит при освобождении памяти, занятой » target=»_blank»>серверным элементом управления, т.е. на последнем этапе жизненного цикла » target=»_blank»>серверного элемента управления при запросе страницы ASP.NET.
Происходит при инициализации » target=»_blank»>серверного элемента управления, который находится на первом этапе его жизненного цикла.
Происходит при загрузке » target=»_blank»>серверного элемента управления в объект Page.
Происходит после загрузки объекта Control, но перед отрисовкой.
Происходит при выгрузке