Control Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Задает свойства, методы и события, общие для всех элементов управления сервером ASP.NET.
public ref class Control : IDisposable, System::ComponentModel::IComponent, System::Web::UI::IDataBindingsAccessor, System::Web::UI::IParserAccessor
public ref class Control : IDisposable, System::ComponentModel::IComponent, System::Web::UI::IControlBuilderAccessor, System::Web::UI::IControlDesignerAccessor, System::Web::UI::IDataBindingsAccessor, System::Web::UI::IExpressionsAccessor, System::Web::UI::IParserAccessor, System::Web::UI::IUrlResolutionService
public class Control : IDisposable, System.ComponentModel.IComponent, System.Web.UI.IDataBindingsAccessor, System.Web.UI.IParserAccessor
[System.ComponentModel.Bindable(true)]
[System.Web.UI.Themeable(false)]
public class Control : IDisposable, System.ComponentModel.IComponent, System.Web.UI.IControlBuilderAccessor, System.Web.UI.IControlDesignerAccessor, System.Web.UI.IDataBindingsAccessor, System.Web.UI.IExpressionsAccessor, System.Web.UI.IParserAccessor, System.Web.UI.IUrlResolutionService
type Control = class
interface IComponent
interface IDisposable
interface IParserAccessor
interface IDataBindingsAccessor
[<System.ComponentModel.Bindable(true)>]
[<System.Web.UI.Themeable(false)>]
type Control = class
interface IComponent
interface IDisposable
interface IParserAccessor
interface IUrlResolutionService
interface IDataBindingsAccessor
interface IControlBuilderAccessor
interface IControlDesignerAccessor
interface IExpressionsAccessor
Public Class Control
Implements IComponent, IDataBindingsAccessor, IDisposable, IParserAccessor
Public Class Control
Implements IComponent, IControlBuilderAccessor, IControlDesignerAccessor, IDataBindingsAccessor, IDisposable, IExpressionsAccessor, IParserAccessor, IUrlResolutionService
- Наследование
-
Control
- Производный
- Атрибуты
- Реализации
Примеры
В следующем примере демонстрируется пользовательский серверный элемент управления, производный Control от класса . Класс InnerContent
переопределяет Control.Render метод, проверяет, содержит ли класс какие-либо дочерние элементы управления на странице, и определяет, является ли первый дочерний элемент элемента управления литеральным элементом управления. Если выполняются оба этих условия, переопределенный метод записывает html-строку <H2>Your Message:, содержимое элемента управления литерала и закрывающий <тег /H2> на страницу Веб-форм.
Важно!
В этом примере имеется текстовое поле, принимающее вводимые пользователем данные, что является потенциальной угрозой безопасности. По умолчанию данные, вводимые пользователем на веб-страницах ASP.NET, проверяются на наличие скриптов и HTML-элементов. Дополнительные сведения см. в разделе Общие сведения об использовании сценариев.
using System;
using System.Web;
using System.Web.UI;
namespace SimpleControlSamples {
public class InnerContent : Control {
[System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="Execution")]
protected override void Render(HtmlTextWriter output) {
if ( (HasControls()) && (Controls[0] is LiteralControl) ) {
output.Write("<H2>Your message : ");
Controls[0].RenderControl(output);
output.Write("</H2>");
}
}
}
}
Option Explicit
Option Strict
Imports System.Web
Imports System.Web.UI
Namespace SimpleControlSamples
Public Class InnerContent
Inherits Control
<System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="Execution")> _
Protected Overrides Sub Render(output As HtmlTextWriter)
If HasControls() And TypeOf Controls(0) Is LiteralControl Then
output.Write("<H2>Your message : ")
Controls(0).RenderControl(output)
output.Write("</H2>")
End If
End Sub
End Class
End Namespace 'SimpleControlSamples
Комментарии
Это основной класс, от который вы наследуете при разработке пользовательских ASP.NET серверных элементов управления. Control не имеет специальных функций пользовательского интерфейса. Если вы создаете элемент управления без пользовательского интерфейса или объединяете другие элементы управления, которые отрисовывают собственный пользовательский интерфейс, наследуйте от Control. Если вы создаете элемент управления с пользовательским интерфейсом, наследуйте его или WebControl любой элемент управления в System.Web.UI.WebControls пространстве имен, который является подходящей отправной точкой для пользовательского элемента управления.
Класс Control является базовым классом для всех ASP.NET серверных элементов управления, включая пользовательские элементы управления, пользовательские элементы управления и страницы. ASP.NET страницы являются экземплярами Page класса , который наследуется от Control класса и обрабатывает запросы для файлов с расширением .aspx.
Класс Control можно прямо или косвенно использовать в качестве части пользовательского интерфейса веб-приложения, поэтому его следует тщательно изучить, чтобы убедиться, что соблюдаются рекомендации по написанию безопасного кода и защите приложений.
Общие сведения по этим темам см. в статьях Обзор угроз безопасности веб-приложений, Рекомендации по политикам безопасности и Основные понятия безопасности. Дополнительные сведения см. в разделах Защита стандартных элементов управления, Практическое руководство. Отображение сообщений о безопасных ошибках, Практическое руководство. Защита от эксплойтов скриптов в веб-приложении путем применения кодировки HTML к строкам и Общие сведения об элементах управления проверки.
Конструкторы
Control() |
Инициализирует новый экземпляр класса Control. |
Свойства
Adapter |
Возвращает конкретный адаптер браузера для элемента управления. |
AppRelativeTemplateSourceDirectory |
Возвращает или задает относительно приложения виртуальный каталог объекта Page или UserControl, который содержит этот элемент управления. |
BindingContainer |
Возвращает элемент управления, который содержит привязку данных элемента управления. |
ChildControlsCreated |
Возвращает значение, которое указывает, созданы ли дочерние элементы управления серверного элемента управления. |
ClientID |
Получает идентификатор элемента управления для HTML-разметки, созданной ASP.NET. |
ClientIDMode |
Возвращает или задает алгоритм, используемый для создания значения свойства ClientID. |
ClientIDSeparator |
Возвращает значение символа разделителя, используемого в свойстве ClientID. |
Context |
Возвращает объект HttpContext, связанный с серверным элементом управления для текущего веб-запроса. |
Controls |
Возвращает объект ControlCollection, который представляет дочерние элементы управления для указанного элемента управления сервера в иерархии пользовательского интерфейса. |
DataItemContainer |
Возвращает ссылку на контейнер именования, если контейнер именования реализует класс IDataItemContainer. |
DataKeysContainer |
Возвращает ссылку на контейнер именования, если контейнер именования реализует класс IDataKeysControl. |
DesignMode |
Возвращает значение, указывающее, используется ли элемент управления на поверхности разработки. |
EnableTheming |
Возвращает или задает значение, указывающее, применяются ли темы к этому элементу управления. |
EnableViewState |
Получает или задает значение, указывающее запрашивающему клиенту, сохраняет ли серверный элемент управления состояние представления и состояние представления своих дочерних элементов управления. |
Events |
Возвращает список делегатов обработчиков событий элемента управления. Это свойство доступно только для чтения. |
HasChildViewState |
Возвращает значение, которое указывает на наличие сохраненных параметров состояния представления у дочернего элемента серверного элемента управления. |
ID |
Возвращает или задает программный идентификатор, назначенный серверному элементу управления. |
IdSeparator |
Возвращает символ, используемый для разделения идентификаторов элементов управления. |
IsChildControlStateCleared |
Возвращает значение, указывающее, имеют ли элементы управления в этом элементе управления состояние элемента управления. |
IsTrackingViewState |
Возвращает значение, отражающее сохранение изменений в состояние представления серверного элемента управления. |
IsViewStateEnabled |
Возвращает значение, указывающее, используется ли состояние представления для этого элемента управления. |
LoadViewStateByID |
Возвращает значение, указывающее, участвует ли элемент управления в загрузке состояния представления ID вместо индекса. |
NamingContainer |
Возвращает ссылку на контейнер именования элемента управления, создающий уникальное пространство имен для различения серверных элементов управления с одинаковыми значениями свойства ID. |
Page |
Возвращает ссылку на экземпляр Page, содержащий серверный элемент управления. |
Parent |
Возвращает ссылку на родительский элемент управления серверного элемента управления в иерархии элементов управления страницы. |
RenderingCompatibility |
Возвращает значение, которое задает версию ASP.NET, с которой совместим созданный HTML. |
Site |
Возвращает сведения о контейнере, который содержит текущий элемент управления при визуализации на поверхности конструктора. |
SkinID |
Возвращает или задает обложку, применяемую к элементу управления. |
TemplateControl |
Возвращает или задает ссылку на шаблон, содержащий этот элемент управления. |
TemplateSourceDirectory |
Возвращает виртуальный каталог Page или UserControl, содержащий текущий серверный элемент управления. |
UniqueID |
Возвращает уникальный идентификатор серверного элемента управления в иерархии. |
ValidateRequestMode |
Возвращает или задает значение, указывающее, проверяет ли элемент управления полученный из браузера клиентский ввод на предмет потенциально опасных значений. |
ViewState |
Возвращает словарь сведений о состоянии, позволяющих сохранять и восстанавливать состояние представления серверного элемента управления при нескольких запросах одной и той же страницы. |
ViewStateIgnoresCase |
Возвращает значение, указывающее, является ли объект StateBag нечувствительным к регистру. |
ViewStateMode |
Возвращает или задает режим состояния представления данного элемента управления. |
Visible |
Получает или задает значение, указывающее, отрисовывается ли серверный элемент управления как пользовательский интерфейс на странице. |
Методы
AddedControl(Control, Int32) |
Вызывается после добавления дочернего элемента управления в коллекцию Controls объекта Control. |
AddParsedSubObject(Object) |
Уведомляет серверный элемент управления, что элемент XML или HTML был проанализирован, и добавляет элемент в серверный элемент управления объекта ControlCollection. |
ApplyStyleSheetSkin(Page) |
Применяет свойства стиля, определенные в таблице стилей страницы, к элементу управления. |
BeginRenderTracing(TextWriter, Object) |
Запускает трассировку во время разработки данных отрисовки. |
BuildProfileTree(String, Boolean) |
Собирает сведения о серверном элементе управления и доставляет их свойству Trace, которое отображается при включенной на странице трассировке. |
ClearCachedClientID() |
Задает для кэшированного свойства ClientID значение |
ClearChildControlState() |
Удаляет сведения о состоянии элемента управления для дочерних элементов управления серверного элемента управления. |
ClearChildState() |
Удаляет сведения о состоянии элемента управления и состоянии представления для всех дочерних элементов серверного элемента управления. |
ClearChildViewState() |
Удаляет сведения о состоянии представления для всех дочерних элементов серверного элемента управления. |
ClearEffectiveClientIDMode() |
Задает для свойства ClientIDMode текущего экземпляра элемента управления и любых его дочерних элементов управления значение Inherit. |
CreateChildControls() |
Вызывается платформой страницы ASP.NET для уведомления серверных элементов управления, использующих составную реализацию, о необходимости создания дочерних элементов управления, содержащихся в них для обратной передачи или отрисовки. |
CreateControlCollection() |
Создает новый объект ControlCollection для хранения дочерних элементов управления (литеральных и серверных) серверного элемента управления. |
DataBind() |
Привязывает источник данных к вызываемому серверному элементу управления и всем его дочерним элементам управления. |
DataBind(Boolean) |
Привязывает источник данных к вызванному серверному элементу управления и всем его дочерними элементами управления с возможностью вызова события DataBinding. |
DataBindChildren() |
Привязывает источник данных к дочерним элементам управления серверного элемента управления. |
Dispose() |
Включает серверный элемент управления для выполнения окончательной чистки до освобождения памяти. |
EndRenderTracing(TextWriter, Object) |
Завершает трассировку во время разработки данных отрисовки. |
EnsureChildControls() |
Определяет наличие у серверного элемента управления дочерних элементов управления. Если дочерних элементов управления нет, они будут созданы. |
EnsureID() |
Создает идентификатор для элементов управления, которые не имеют назначенного идентификатора. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
FindControl(String) |
Выполняет поиск серверного элемента управления с заданным параметром |
FindControl(String, Int32) |
Выполняет поиск в текущем контейнере именования серверного элемента управления с указанным |
Focus() |
Задает фокус ввода на элемент управления. |
GetDesignModeState() |
Возвращает данные времени разработки для элемента управления. |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetRouteUrl(Object) |
Возвращает URL-адрес, соответствующий набору параметров маршрута. |
GetRouteUrl(RouteValueDictionary) |
Возвращает URL-адрес, соответствующий набору параметров маршрута. |
GetRouteUrl(String, Object) |
Возвращает URL-адрес, соответствующий набору параметров маршрута и имени маршрута. |
GetRouteUrl(String, RouteValueDictionary) |
Возвращает URL-адрес, соответствующий набору параметров маршрута и имени маршрута. |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
GetUniqueIDRelativeTo(Control) |
Возвращает часть с префиксом свойства UniqueID указанного элемента управления. |
HasControls() |
Определяет наличие у серверного элемента управления дочерних элементов управления. |
HasEvents() |
Возвращает значение, указывающее, регистрируются ли события для элемента управления или каких-либо дочерних элементов управления. |
IsLiteralContent() |
Определяет наличие у серверного элемента управления только текстового содержимого. |
LoadControlState(Object) |
Восстанавливает сведения о состоянии элемента управления предыдущего запроса страницы, сохраненные методом SaveControlState(). |
LoadViewState(Object) |
Восстанавливает сведения о состоянии представления из предыдущего запроса страницы, сохраненного методом SaveViewState(). |
MapPathSecure(String) |
Извлекает физический путь, к которому ведет виртуальный путь (абсолютный или относительный). |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
OnBubbleEvent(Object, EventArgs) |
Определяет, передается ли событие серверного элемента управления вверх по иерархии серверных элементов управления пользовательского интерфейса страницы. |
OnDataBinding(EventArgs) |
Вызывает событие DataBinding. |
OnInit(EventArgs) |
Вызывает событие Init. |
OnLoad(EventArgs) |
Вызывает событие Load. |
OnPreRender(EventArgs) |
Вызывает событие PreRender. |
OnUnload(EventArgs) |
Вызывает событие Unload. |
OpenFile(String) |
Возвращает Stream, используемое для чтения файла. |
RaiseBubbleEvent(Object, EventArgs) |
Присваивает родительскому элементу управления все источники события и сведения о них. |
RemovedControl(Control) |
Вызывается после удаления дочернего элемента управления из коллекции Controls объекта Control. |
Render(HtmlTextWriter) |
Отправляет содержимое серверного элемента управления в предоставленный объект HtmlTextWriter, который записывает содержимое для отрисовки в клиенте. |
RenderChildren(HtmlTextWriter) |
Выводит содержимое дочерних элементов серверного элемента управления в предоставленный объект HtmlTextWriter, который записывает это содержимое для подготовки к просмотру на клиенте. |
RenderControl(HtmlTextWriter) |
Выводит содержимое серверного элемента управления в указанный объект HtmlTextWriter и сохраняет сведения о трассировке элемента управления, если трассировка включена. |
RenderControl(HtmlTextWriter, ControlAdapter) |
Выводит серверный элемент управления в указанный объект HtmlTextWriter, используя указанный объект ControlAdapter. |
ResolveAdapter() |
Возвращает адаптер элемента управления, отвечающий за отрисовку определенного элемента управления. |
ResolveClientUrl(String) |
Возвращает URL-адрес, который может использоваться браузером. |
ResolveUrl(String) |
Преобразует URL-адрес в адрес, доступный для клиента. |
SaveControlState() |
Сохраняет любые изменения состояния серверного элемента управления, произошедшие после отправки страницы обратно на сервер. |
SaveViewState() |
Сохраняет любые изменения состояния просмотра серверного элемента управления, произошедшие после отправки страницы обратно на сервер. |
SetDesignModeState(IDictionary) |
Задает данные времени разработки для элемента управления. |
SetRenderMethodDelegate(RenderMethod) |
Назначает делегата обработчика событий для преобразования серверного элемента управления и его содержимого для просмотра в родительский элемент управления. |
SetTraceData(Object, Object) |
Задает данные трассировки для трассировки данных отрисовки во время разработки, используя ключ данных трассировки и значение данных трассировки. |
SetTraceData(Object, Object, Object) |
Задает данные трассировки для трассировки данных отрисовки во время разработки, используя трассируемый объект, ключ данных трассировки и значение данных трассировки. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
TrackViewState() |
Вызывает отслеживание изменений состояния представления серверного элемента управления для сохранения в объекте StateBag серверного элемента управления. Этот объект доступен с помощью свойства ViewState. |
События
DataBinding |
Происходит при привязке серверного элемента управления к источнику данных. |
Disposed |
Происходит при освобождении памяти, занятой серверным элементом управления, т.е. на последнем этапе жизненного цикла серверного элемента управления при запросе страницы ASP.NET. |
Init |
Происходит при инициализации серверного элемента управления, который находится на первом этапе его жизненного цикла. |
Load |
Происходит при загрузке серверного элемента управления в объект Page. |
PreRender |
Происходит после загрузки объекта Control, но перед отрисовкой. |
Unload |
Происходит при выгрузке серверного элемента управления из памяти. |
Явные реализации интерфейса
IControlBuilderAccessor.ControlBuilder |
Описание этого члена см. в разделе ControlBuilder. |
IControlDesignerAccessor.GetDesignModeState() |
Описание этого члена см. в разделе GetDesignModeState(). |
IControlDesignerAccessor.SetDesignModeState(IDictionary) |
Описание этого члена см. в разделе SetDesignModeState(IDictionary). |
IControlDesignerAccessor.SetOwnerControl(Control) |
Описание этого члена см. в разделе SetOwnerControl(Control). |
IControlDesignerAccessor.UserData |
Описание этого члена см. в разделе UserData. |
IDataBindingsAccessor.DataBindings |
Описание этого члена см. в разделе DataBindings. |
IDataBindingsAccessor.HasDataBindings |
Описание этого члена см. в разделе HasDataBindings. |
IExpressionsAccessor.Expressions |
Описание этого члена см. в разделе Expressions. |
IExpressionsAccessor.HasExpressions |
Описание этого члена см. в разделе HasExpressions. |
IParserAccessor.AddParsedSubObject(Object) |
Описание этого члена см. в разделе AddParsedSubObject(Object). |
Методы расширения
FindDataSourceControl(Control) |
Возвращает источник данных, связанный с элементом управления данными, для заданного элемента управления. |
FindFieldTemplate(Control, String) |
Возвращает шаблон поля для заданного столбца в контейнере именования заданного элемента управления. |
FindMetaTable(Control) |
Возвращает объект метатаблицы для контейнерного элемента управления данными. |