Partage via


Control Classe

Définition

Définit les propriétés, les méthodes et les événements qui sont partagés par tous les contrôles serveur 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
Héritage
Control
Dérivé
Attributs
Implémente

Exemples

L’exemple suivant illustre un contrôle serveur personnalisé qui dérive de la Control classe . La InnerContent classe remplace la Control.Render méthode, vérifie si la classe a des contrôles enfants sur la page et détermine si le premier enfant du contrôle est un contrôle littéral. Si ces deux conditions sont remplies, la méthode remplacée écrit la chaîne <HTML H2>Your Message :, le contenu du contrôle littéral et une balise /H2> fermante <dans la page Web Forms.

Important

Cet exemple comprend une zone de texte qui accepte une entrée d'utilisateur, ce qui constitue une menace potentielle pour la sécurité. Par défaut, les pages web ASP.NET vérifient que l’entrée d’utilisateur n’inclut pas de script ou d’éléments HTML. Pour plus d’informations, consultez Vue d’ensemble des attaques de script.

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

Remarques

Il s’agit de la classe principale dont vous dérivez lorsque vous développez des contrôles serveur de ASP.NET personnalisés. Control n’a pas de fonctionnalités spécifiques à l’interface utilisateur. Si vous créez un contrôle qui n’a pas d’interface utilisateur ou combine d’autres contrôles qui restituent leur propre interface utilisateur, dérivez de Control. Si vous créez un contrôle qui a une interface utilisateur, dérivez de WebControl ou tout contrôle dans l’espace System.Web.UI.WebControls de noms qui fournit un point de départ approprié pour votre contrôle personnalisé.

La Control classe est la classe de base pour tous les contrôles serveur ASP.NET, y compris les contrôles personnalisés, les contrôles utilisateur et les pages. ASP.NET pages sont des instances de la Page classe , qui hérite de la Control classe et qui gèrent les demandes de fichiers qui ont une extension .aspx.

La Control classe peut être utilisée directement ou indirectement dans le cadre de l’interface utilisateur de votre application web et, par conséquent, doit être examinée de près pour s’assurer que les meilleures pratiques en matière d’écriture de code sécurisé et de sécurisation des applications sont suivies.

Pour obtenir des informations générales sur ces rubriques, consultez Vue d’ensemble des menaces de sécurité des applications web, meilleures pratiques en matière de stratégie de sécurité et concepts de sécurité clés. Pour plus d’informations, consultez Sécurisation des contrôles standard, Guide pratique pour afficher des messages d’erreur sécurisés, Comment : protéger contre les attaques de script dans une application web en appliquant l’encodage HTML aux chaînes et Présentation des contrôles de validation.

Constructeurs

Control()

Initialise une nouvelle instance de la classe Control.

Propriétés

Adapter

Obtient l'adaptateur spécifique au navigateur pour le contrôle.

AppRelativeTemplateSourceDirectory

Obtient ou définit le répertoire virtuel relatif à l'application de l'objet Page ou UserControl qui contient ce contrôle.

BindingContainer

Obtient le contrôle qui contient la liaison de données de ce contrôle.

ChildControlsCreated

Obtient une valeur qui indique si des contrôles enfants du contrôle serveur ont été créés.

ClientID

Obtient l’ID de contrôle du balisage HTML généré par ASP.NET.

ClientIDMode

Obtient ou définit l'algorithme utilisé pour générer la valeur de la propriété ClientID.

ClientIDSeparator

Obtient une valeur de caractère représentant le caractère de séparation utilisé dans la propriété ClientID.

Context

Obtient l'objet HttpContext associé au contrôle serveur pour la demande Web en cours.

Controls

Obtient un objet ControlCollection qui représente les contrôles enfants pour un contrôle serveur spécifié dans la hiérarchie de l’interface utilisateur.

DataItemContainer

Obtient une référence au conteneur d'attribution de noms si celui-ci implémente IDataItemContainer.

DataKeysContainer

Obtient une référence au conteneur d'attribution de noms si celui-ci implémente IDataKeysControl.

DesignMode

Obtient une valeur indiquant si un contrôle est utilisé sur une aire de conception.

EnableTheming

Obtient ou définit une valeur indiquant si les thèmes s'appliquent à ce contrôle.

EnableViewState

Obtient ou définit une valeur indiquant si le contrôle serveur conserve son état d’affichage, et l’état d’affichage de tous les contrôles enfants qu’il contient, au client demandeur.

Events

Obtient la liste des délégués de gestionnaires d'événements pour le contrôle. Cette propriété est en lecture seule.

HasChildViewState

Obtient une valeur indiquant si les contrôles enfants du contrôle serveur en cours possèdent des paramètres d'état d'affichage enregistrés.

ID

Obtient ou définit l'ID programmatique assigné au contrôle serveur.

IdSeparator

Obtient le caractère utilisé pour séparer des identificateurs de contrôle.

IsChildControlStateCleared

Obtient une valeur indiquant si les contrôles contenus dans ce contrôle utilisent l'état du contrôle.

IsTrackingViewState

Obtient une valeur qui indique si le contrôle serveur enregistre les modifications apportées à son état d'affichage.

IsViewStateEnabled

Obtient une valeur indiquant si l'état d'affichage est activé pour ce contrôle.

LoadViewStateByID

Obtient une valeur indiquant si le contrôle participe au chargement de son état d'affichage par ID et non par index.

NamingContainer

Obtient une référence au conteneur d'attribution de noms du contrôle serveur, qui crée un espace de noms unique pour différencier les contrôles serveur dont la propriété ID possède la même valeur.

Page

Obtient une référence à l'instance de Page qui contient le contrôle serveur.

Parent

Obtient une référence au contrôle parent du contrôle serveur dans la hiérarchie des contrôles de la page.

RenderingCompatibility

Obtient une valeur qui spécifie la version ASP.NET avec laquelle le HTML restitué sera compatible.

Site

Obtient des informations sur le conteneur qui héberge le contrôle en cours lorsqu'il est rendu sur une aire de conception.

SkinID

Obtient ou définit l’apparence à appliquer au contrôle.

TemplateControl

Obtient ou définit une référence au modèle qui contient ce contrôle.

TemplateSourceDirectory

Obtient le répertoire virtuel du Page ou du UserControl qui contient le contrôle serveur en cours.

UniqueID

Obtient l'identificateur unique qualifié sur le plan hiérarchique du contrôle serveur.

ValidateRequestMode

Obtient ou définit une valeur qui indique si le contrôle vérifie l'entrée cliente du navigateur à la recherche de valeurs potentiellement dangereuses.

ViewState

Obtient un dictionnaire d'informations d'état qui vous permet d'enregistrer et de restaurer l'état d'affichage d'un contrôle serveur entre plusieurs demandes de la même page.

ViewStateIgnoresCase

Obtient une valeur qui indique si l'objet StateBag respecte la casse.

ViewStateMode

Obtient ou définit le mode d'état d'affichage de ce contrôle.

Visible

Obtient ou définit une valeur qui indique si un contrôle serveur est rendu en tant qu’interface utilisateur sur la page.

Méthodes

AddedControl(Control, Int32)

Méthode appelée après qu’un contrôle enfant est ajouté à la collection Controls de l’objet Control.

AddParsedSubObject(Object)

Avertit le contrôle serveur qu’un élément XML ou HTML a été analysé, et ajoute l’élément à l’objet ControlCollection du contrôle serveur.

ApplyStyleSheetSkin(Page)

Applique les propriétés de style définies dans la feuille de style de la page au contrôle.

BeginRenderTracing(TextWriter, Object)

Commence le traçage au moment du design des données de rendu.

BuildProfileTree(String, Boolean)

Collecte des informations sur le contrôle serveur et les livre à la propriété Trace à afficher lorsque le traçage est activé pour la page.

ClearCachedClientID()

Affecte à la valeur ClientID mise en cache la valeur null.

ClearChildControlState()

Supprime les informations sur l'état du contrôle des contrôles enfants du contrôle serveur.

ClearChildState()

Supprime les informations sur l'état d'affichage et sur l'état du contrôle de tous les contrôles enfants du contrôle serveur.

ClearChildViewState()

Supprime les informations d'état d'affichage de tous les contrôles enfants du contrôle serveur.

ClearEffectiveClientIDMode()

Affecte la valeur ClientIDMode à la propriété Inherit de l'instance de contrôle actuelle et de tous contrôles enfants.

CreateChildControls()

Appelée par l’infrastructure de page ASP.NET pour signaler aux contrôles serveur qu’ils doivent utiliser l’implémentation basée sur la composition pour créer les contrôles enfants qu’ils contiennent en vue de la publication ou du rendu.

CreateControlCollection()

Crée un objet ControlCollection pour contenir les contrôles enfants (littéraux et serveur) du contrôle serveur.

DataBind()

Lie une source de données au contrôle serveur appelé et à tous ses contrôles enfants.

DataBind(Boolean)

Lie une source de données au contrôle serveur appelé et tous ses contrôles enfants avec une option pour déclencher l'événement DataBinding.

DataBindChildren()

Lie une source de données aux contrôles enfants du contrôle serveur.

Dispose()

Permet à un contrôle serveur d'effectuer le nettoyage final avant qu'il soit libéré de la mémoire.

EndRenderTracing(TextWriter, Object)

Met fin au traçage au moment du design des données de rendu.

EnsureChildControls()

Détermine si le contrôle serveur contient des contrôles enfants. S'il ne contient pas de contrôles enfants, il en crée.

EnsureID()

Crée un identificateur pour les contrôles auxquels aucun identificateur n'est assigné.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
FindControl(String)

Recherche un contrôle serveur possédant le paramètre id spécifié dans le conteneur d'attribution de noms actuel.

FindControl(String, Int32)

Recherche le conteneur d'attribution de noms actuel d'un contrôle serveur avec l'id spécifié et un entier, spécifié dans le paramètre pathOffset, qui facilite la recherche. Vous ne devez pas substituer cette version de la méthode FindControl.

Focus()

Affecte le focus d'entrée à un contrôle.

GetDesignModeState()

Obtient les données au moment du design pour un contrôle.

GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetRouteUrl(Object)

Obtient l'URL qui correspond à un jeu de paramètres d'itinéraire.

GetRouteUrl(RouteValueDictionary)

Obtient l'URL qui correspond à un jeu de paramètres d'itinéraire.

GetRouteUrl(String, Object)

Obtient l'URL qui correspond à un jeu de paramètres d'itinéraire et à un nom d'itinéraire.

GetRouteUrl(String, RouteValueDictionary)

Obtient l'URL qui correspond à un jeu de paramètres d'itinéraire et à un nom d'itinéraire.

GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
GetUniqueIDRelativeTo(Control)

Retourne la partie préfixée de la propriété UniqueID du contrôle spécifié.

HasControls()

Détermine si le contrôle serveur contient des contrôles enfants.

HasEvents()

Retourne une valeur indiquant si des événements sont inscrits pour le contrôle ou des contrôles enfants.

IsLiteralContent()

Détermine si le contrôle serveur ne détient qu'un contenu littéral.

LoadControlState(Object)

Restaure des informations sur l'état du contrôle à partir d'une demande de page antérieure enregistrée par la méthode SaveControlState().

LoadViewState(Object)

Restaure les informations d’état d’affichage d’une précédente requête de page enregistrées par la méthode SaveViewState().

MapPathSecure(String)

Récupère le chemin d'accès physique auquel un chemin d'accès virtuel, absolu ou relatif, correspond.

MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
OnBubbleEvent(Object, EventArgs)

Détermine si l’événement du contrôle serveur est passé dans la hiérarchie des contrôles serveur de l’interface utilisateur de la page.

OnDataBinding(EventArgs)

Déclenche l’événement DataBinding.

OnInit(EventArgs)

Déclenche l’événement Init.

OnLoad(EventArgs)

Déclenche l’événement Load.

OnPreRender(EventArgs)

Déclenche l’événement PreRender.

OnUnload(EventArgs)

Déclenche l’événement Unload.

OpenFile(String)

Obtient un Stream utilisé pour lire un fichier.

RaiseBubbleEvent(Object, EventArgs)

Assigne les sources éventuelles de l'événement et ses informations au parent du contrôle.

RemovedControl(Control)

Méthode appelée après la suppression d’un contrôle enfant de la collection Controls de l’objet Control.

Render(HtmlTextWriter)

Envoie le contenu du contrôle serveur à un objet HtmlTextWriter, qui écrit le contenu à rendre sur le client.

RenderChildren(HtmlTextWriter)

Produit le contenu des enfants d'un contrôle serveur dans un objet HtmlTextWriter fourni qui écrit le contenu à restituer sur le client.

RenderControl(HtmlTextWriter)

Envoie le contenu du contrôle serveur à un objet HtmlTextWriter fourni et stocke les informations de traçage sur le contrôle si le traçage est activé.

RenderControl(HtmlTextWriter, ControlAdapter)

Génère le contenu du contrôle serveur dans un objet HtmlTextWriter à l'aide d'un objet ControlAdapter fourni.

ResolveAdapter()

Obtient l'adaptateur de contrôles responsable du rendu du contrôle spécifié.

ResolveClientUrl(String)

Obtient une URL qui peut être utilisée par le navigateur.

ResolveUrl(String)

Convertit une URL en une URL que le client soit en mesure d'utiliser.

SaveControlState()

Enregistre tous les changements d’état de contrôle serveur qui ont eu lieu depuis que la page a été publiée sur le serveur.

SaveViewState()

Enregistre les changements d’état d’affichage du contrôle serveur qui se sont produits depuis que la page a été republiée sur le serveur.

SetDesignModeState(IDictionary)

Définit les données au moment du design pour un contrôle.

SetRenderMethodDelegate(RenderMethod)

Assigne un délégué de gestionnaires d'événements pour générer le rendu du contrôle serveur et de son contenu dans son contrôle parent.

SetTraceData(Object, Object)

Définit les données de trace pour le suivi du rendu des données au moment du design à l'aide de la clé des données de trace et de la valeur des données de trace.

SetTraceData(Object, Object, Object)

Définit les données de trace pour le suivi du rendu des données au moment du design, à l'aide de l'objet suivi, de la clé des données de trace et de la valeur des données de trace.

ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)
TrackViewState()

Provoque le suivi des modifications de l'état d'affichage pour le contrôle serveur afin qu'elles puissent être stockées dans l'objet StateBag du contrôle serveur. Cet objet est accessible via la propriété ViewState.

Événements

DataBinding

Se produit lorsque le contrôle serveur se lie à une source de données.

Disposed

Se produit lorsqu'un contrôle serveur est libéré de la mémoire, ce qui constitue la dernière étape du cycle de vie d'un contrôle serveur en cas de demande d'une page ASP.NET.

Init

Se produit lorsque le contrôle serveur est initialisé, ce qui constitue la première étape de son cycle de vie.

Load

Se produit lorsque le contrôle serveur est chargé dans l'objet Page.

PreRender

Se produit après le chargement de l'objet Control mais avant le rendu.

Unload

Se produit lorsque le contrôle serveur est déchargé de la mémoire.

Implémentations d’interfaces explicites

IControlBuilderAccessor.ControlBuilder

Pour obtenir une description de ce membre, consultez ControlBuilder.

IControlDesignerAccessor.GetDesignModeState()

Pour obtenir une description de ce membre, consultez GetDesignModeState().

IControlDesignerAccessor.SetDesignModeState(IDictionary)

Pour obtenir une description de ce membre, consultez SetDesignModeState(IDictionary).

IControlDesignerAccessor.SetOwnerControl(Control)

Pour obtenir une description de ce membre, consultez SetOwnerControl(Control).

IControlDesignerAccessor.UserData

Pour obtenir une description de ce membre, consultez UserData.

IDataBindingsAccessor.DataBindings

Pour obtenir une description de ce membre, consultez DataBindings.

IDataBindingsAccessor.HasDataBindings

Pour obtenir une description de ce membre, consultez HasDataBindings.

IExpressionsAccessor.Expressions

Pour obtenir une description de ce membre, consultez Expressions.

IExpressionsAccessor.HasExpressions

Pour obtenir une description de ce membre, consultez HasExpressions.

IParserAccessor.AddParsedSubObject(Object)

Pour obtenir une description de ce membre, consultez AddParsedSubObject(Object).

Méthodes d’extension

FindDataSourceControl(Control)

Retourne la source de données associée au contrôle de données pour le contrôle spécifié.

FindFieldTemplate(Control, String)

Retourne le modèle de champ pour la colonne spécifiée dans le conteneur d'attribution de noms du contrôle spécifié.

FindMetaTable(Control)

Retourne l'objet Metatable pour le contrôle de données conteneur.

S’applique à

Voir aussi