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> на страницу веб-форм.

Important

В этом примере есть текстовое поле, которое принимает входные данные пользователя, которое является потенциальной угрозой безопасности. По умолчанию 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 значение null.

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, Int32)

Выполняет поиск текущего контейнера именования для элемента управления сервером с указанным id и целым числом, указанным в pathOffset параметре, который помогает в поиске. Эту версию FindControl метода не следует переопределять.

FindControl(String)

Выполняет поиск текущего контейнера именования для элемента управления сервером с указанным id параметром.

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, ControlAdapter)

Выводит содержимое элемента управления сервером в предоставленный HtmlTextWriter объект с помощью предоставленного ControlAdapter объекта.

RenderControl(HtmlTextWriter)

Выводит содержимое сервера управления в предоставленный HtmlTextWriter объект и сохраняет сведения о трассировке элемента управления, если трассировка включена.

ResolveAdapter()

Возвращает адаптер управления, отвечающий за отрисовку указанного элемента управления.

ResolveClientUrl(String)

Получает URL-адрес, который может использоваться браузером.

ResolveUrl(String)

Преобразует URL-адрес в url-адрес, который можно использовать на запрашиваемом клиенте.

SaveControlState()

Сохраняет все изменения состояния управления сервером, которые произошли с момента публикации страницы на сервер.

SaveViewState()

Сохраняет все изменения состояния представления представления сервера, которые произошли с момента отправки страницы на сервер.

SetDesignModeState(IDictionary)

Задает данные во время разработки для элемента управления.

SetRenderMethodDelegate(RenderMethod)

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

SetTraceData(Object, Object, Object)

Задает данные трассировки для трассировки данных отрисовки во время разработки, используя объект трассировки, ключ данных трассировки и значение данных трассировки.

SetTraceData(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)

Возвращает объект метатабли для содержащего элемента управления данными.

Применяется к

См. также раздел