Control Classe

Definizione

Definisce le proprietà, i metodi e gli eventi condivisi da tutti i controlli server 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
Ereditarietà
Control
Derivato
Attributi
Implementazioni

Esempio

Nell'esempio seguente viene illustrato un controllo server personalizzato che deriva dalla Control classe . La InnerContent classe esegue l'override del Control.Render metodo , verifica se la classe dispone di controlli figlio nella pagina e determina se il primo elemento figlio del controllo è un controllo letterale. Se vengono soddisfatte entrambe queste condizioni, il metodo sottoposto a override scrive la stringa <HTML H2>Your Message:, il contenuto del controllo letterale e un tag /H2> di chiusura <nella pagina Web Form.

Importante

In questo esempio è presente una casella di testo che accetta l'input dell'utente, che rappresenta una potenziale minaccia per la sicurezza. Per impostazione predefinita, ASP.NET pagine Web verificare che l'input dell'utente non includa elementi SCRIPT o HTML. Per altre informazioni, vedere Cenni preliminari sugli exploit di 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

Commenti

Si tratta della classe primaria da cui derivare quando si sviluppano controlli server ASP.NET personalizzati. Control non dispone di funzionalità specifiche dell'interfaccia utente. Se si crea un controllo che non dispone di un'interfaccia utente o si combinano altri controlli che eseguono il rendering della propria interfaccia utente, derivano da Control. Se si crea un controllo che dispone di un'interfaccia utente, derivare da o da WebControl qualsiasi controllo nello spazio dei System.Web.UI.WebControls nomi che fornisce un punto di partenza appropriato per il controllo personalizzato.

La classe Control è la classe base per tutti i controlli server ASP.NET, inclusi controlli personalizzati, controlli utente e pagine. ASP.NET pagine sono istanze della classe Page, che eredita dalla classe Control e che gestiscono le richieste per i file con estensione .aspx.

La Control classe può essere usata direttamente o indirettamente come parte dell'interfaccia utente per l'applicazione Web e, di conseguenza, deve essere esaminata per assicurarsi che vengano seguite le procedure consigliate per la scrittura di codice sicuro e la protezione delle applicazioni.

Per informazioni generali su questi argomenti, vedere Panoramica delle minacce per la sicurezza delle applicazioni Web, procedure consigliate per i criteri di sicurezza e concetti chiave sulla sicurezza. Per informazioni più specifiche, vedere Protezione dei controlli standard, Procedura: Visualizzare messaggi di errore sicuri, Procedura: Proteggere dagli exploit di script in un'applicazione Web applicando la codifica HTML alle stringhe e Introduzione ai controlli di convalida.

Costruttori

Nome Descrizione
Control()

Inizializza una nuova istanza della classe Control.

Proprietà

Nome Descrizione
Adapter

Ottiene l'adattatore specifico del browser per il controllo .

AppRelativeTemplateSourceDirectory

Ottiene o imposta la directory virtuale relativa all'applicazione dell'oggetto Page o UserControl che contiene questo controllo.

BindingContainer

Ottiene il controllo che contiene il data binding di questo controllo.

ChildControlsCreated

Ottiene un valore che indica se sono stati creati i controlli figlio del controllo server.

ClientID

Ottiene l'ID di controllo per il markup HTML generato da ASP.NET.

ClientIDMode

Ottiene o imposta l'algoritmo utilizzato per generare il valore della ClientID proprietà .

ClientIDSeparator

Ottiene un valore di carattere che rappresenta il carattere separatore utilizzato nella ClientID proprietà .

Context

Ottiene l'oggetto HttpContext associato al controllo server per la richiesta Web corrente.

Controls

Ottiene un ControlCollection oggetto che rappresenta i controlli figlio per un controllo server specificato nella gerarchia dell'interfaccia utente.

DataItemContainer

Ottiene un riferimento al contenitore di denominazione se il contenitore di denominazione implementa IDataItemContainer.

DataKeysContainer

Ottiene un riferimento al contenitore di denominazione se il contenitore di denominazione implementa IDataKeysControl.

DesignMode

Ottiene un valore che indica se un controllo viene utilizzato in un'area di progettazione.

EnableTheming

Ottiene o imposta un valore che indica se i temi si applicano a questo controllo.

EnableViewState

Ottiene o imposta un valore che indica se il controllo server mantiene lo stato di visualizzazione e lo stato di visualizzazione di tutti i controlli figlio contenuti, al client richiedente.

Events

Ottiene un elenco di delegati del gestore eventi per il controllo . Questa proprietà è di sola lettura.

HasChildViewState

Ottiene un valore che indica se i controlli figlio del controllo server corrente hanno impostazioni dello stato di visualizzazione salvate.

ID

Ottiene o imposta l'identificatore programmatico assegnato al controllo server.

IdSeparator

Ottiene il carattere utilizzato per separare gli identificatori di controllo.

IsChildControlStateCleared

Ottiene un valore che indica se i controlli contenuti all'interno di questo controllo hanno uno stato di controllo.

IsTrackingViewState

Ottiene un valore che indica se il controllo server salva le modifiche apportate allo stato di visualizzazione.

IsViewStateEnabled

Ottiene un valore che indica se lo stato di visualizzazione è abilitato per questo controllo.

LoadViewStateByID

Ottiene un valore che indica se il controllo partecipa al caricamento dello stato di visualizzazione in ID base al posto dell'indice.

NamingContainer

Ottiene un riferimento al contenitore di denominazione del controllo server, che crea uno spazio dei nomi univoco per la differenziazione tra i controlli server con lo stesso ID valore della proprietà.

Page

Ottiene un riferimento all'istanza Page che contiene il controllo server.

Parent

Ottiene un riferimento al controllo padre del controllo server nella gerarchia dei controlli pagina.

RenderingCompatibility

Ottiene un valore che specifica la versione ASP.NET con cui è stato eseguito il rendering del codice HTML sarà compatibile.

Site

Ottiene informazioni sul contenitore che ospita il controllo corrente durante il rendering in un'area di progettazione.

SkinID

Ottiene o imposta l'interfaccia da applicare al controllo.

TemplateControl

Ottiene o imposta un riferimento al modello che contiene questo controllo.

TemplateSourceDirectory

Ottiene la directory virtuale dell'oggetto Page o UserControl che contiene il controllo server corrente.

UniqueID

Ottiene l'identificatore univoco e qualificato gerarchicamente per il controllo server.

ValidateRequestMode

Ottiene o imposta un valore che indica se il controllo controlla l'input client dal browser per individuare valori potenzialmente pericolosi.

ViewState

Ottiene un dizionario di informazioni sullo stato che consente di salvare e ripristinare lo stato di visualizzazione di un controllo server tra più richieste per la stessa pagina.

ViewStateIgnoresCase

Ottiene un valore che indica se l'oggetto StateBag non fa distinzione tra maiuscole e minuscole.

ViewStateMode

Ottiene o imposta la modalità dello stato di visualizzazione di questo controllo.

Visible

Ottiene o imposta un valore che indica se il rendering di un controllo server viene eseguito come interfaccia utente nella pagina.

Metodi

Nome Descrizione
AddedControl(Control, Int32)

Chiamato dopo l'aggiunta di un controllo figlio all'insieme Controls dell'oggetto Control .

AddParsedSubObject(Object)

Notifica al controllo server che un elemento, XML o HTML, è stato analizzato e aggiunge l'elemento all'oggetto del ControlCollection controllo server.

ApplyStyleSheetSkin(Page)

Applica le proprietà di stile definite nel foglio di stile della pagina al controllo .

BeginRenderTracing(TextWriter, Object)

Inizia la traccia in fase di progettazione dei dati di rendering.

BuildProfileTree(String, Boolean)

Raccoglie informazioni sul controllo server e le distribuisce alla Trace proprietà da visualizzare quando la traccia è abilitata per la pagina.

ClearCachedClientID()

Imposta il valore memorizzato nella ClientID cache su null.

ClearChildControlState()

Elimina le informazioni sullo stato del controllo per i controlli figlio del controllo server.

ClearChildState()

Elimina le informazioni sullo stato di visualizzazione e sullo stato del controllo per tutti i controlli figlio del controllo server.

ClearChildViewState()

Elimina le informazioni sullo stato di visualizzazione per tutti i controlli figlio del controllo server.

ClearEffectiveClientIDMode()

Imposta la ClientIDMode proprietà dell'istanza del controllo corrente e di tutti i controlli figlio su Inherit.

CreateChildControls()

Chiamato dal framework di pagina ASP.NET per notificare ai controlli server che usano l'implementazione basata sulla composizione per creare tutti i controlli figlio che contengono in preparazione alla registrazione o al rendering.

CreateControlCollection()

Crea un nuovo ControlCollection oggetto per contenere i controlli figlio (sia letterali che server) del controllo server.

DataBind()

Associa un'origine dati al controllo server richiamato e a tutti i relativi controlli figlio.

DataBind(Boolean)

Associa un'origine dati al controllo server richiamato e a tutti i relativi controlli figlio con un'opzione per generare l'evento DataBinding .

DataBindChildren()

Associa un'origine dati ai controlli figlio del controllo server.

Dispose()

Consente a un controllo server di eseguire la pulizia finale prima che venga rilasciata dalla memoria.

EndRenderTracing(TextWriter, Object)

Termina la traccia in fase di progettazione dei dati di rendering.

EnsureChildControls()

Determina se il controllo server contiene controlli figlio. In caso contrario, crea controlli figlio.

EnsureID()

Crea un identificatore per i controlli a cui non è assegnato un identificatore.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
FindControl(String, Int32)

Cerca nel contenitore di denominazione corrente un controllo server con l'oggetto specificato id e un numero intero, specificato nel pathOffset parametro , che facilita la ricerca. Non è consigliabile eseguire l'override di questa versione del FindControl metodo .

FindControl(String)

Cerca nel contenitore di denominazione corrente un controllo server con il parametro specificato id .

Focus()

Imposta lo stato attivo dell'input su un controllo .

GetDesignModeState()

Ottiene i dati in fase di progettazione per un controllo .

GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetRouteUrl(Object)

Ottiene l'URL che corrisponde a un set di parametri di route.

GetRouteUrl(RouteValueDictionary)

Ottiene l'URL che corrisponde a un set di parametri di route.

GetRouteUrl(String, Object)

Ottiene l'URL che corrisponde a un set di parametri di route e un nome di route.

GetRouteUrl(String, RouteValueDictionary)

Ottiene l'URL che corrisponde a un set di parametri di route e un nome di route.

GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
GetUniqueIDRelativeTo(Control)

Restituisce la parte con prefisso della UniqueID proprietà del controllo specificato.

HasControls()

Determina se il controllo server contiene controlli figlio.

HasEvents()

Restituisce un valore che indica se gli eventi vengono registrati per il controllo o per i controlli figlio.

IsLiteralContent()

Determina se il controllo server contiene solo contenuto letterale.

LoadControlState(Object)

Ripristina le informazioni sullo stato del controllo da una richiesta di pagina precedente salvata dal SaveControlState() metodo .

LoadViewState(Object)

Ripristina le informazioni sullo stato di visualizzazione da una richiesta di pagina precedente salvata dal SaveViewState() metodo .

MapPathSecure(String)

Recupera il percorso fisico a cui viene mappato un percorso virtuale, assoluto o relativo.

MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
OnBubbleEvent(Object, EventArgs)

Determina se l'evento per il controllo server viene passato alla gerarchia di controllo server dell'interfaccia utente della pagina.

OnDataBinding(EventArgs)

Genera l'evento DataBinding.

OnInit(EventArgs)

Genera l'evento Init.

OnLoad(EventArgs)

Genera l'evento Load.

OnPreRender(EventArgs)

Genera l'evento PreRender.

OnUnload(EventArgs)

Genera l'evento Unload.

OpenFile(String)

Ottiene un Stream oggetto utilizzato per leggere un file.

RaiseBubbleEvent(Object, EventArgs)

Assegna tutte le origini dell'evento e le relative informazioni all'elemento padre del controllo.

RemovedControl(Control)

Chiamato dopo che un controllo figlio viene rimosso dall'insieme Controls dell'oggetto Control .

Render(HtmlTextWriter)

Invia il contenuto del controllo server a un oggetto specificato HtmlTextWriter , che scrive il contenuto di cui eseguire il rendering nel client.

RenderChildren(HtmlTextWriter)

Restituisce il contenuto degli elementi figlio di un controllo server in un oggetto fornito HtmlTextWriter , che scrive il contenuto di cui eseguire il rendering nel client.

RenderControl(HtmlTextWriter, ControlAdapter)

Restituisce il contenuto del controllo server a un oggetto fornito HtmlTextWriter utilizzando un oggetto fornito ControlAdapter .

RenderControl(HtmlTextWriter)

Restituisce il contenuto del controllo server in un oggetto fornito HtmlTextWriter e archivia le informazioni di traccia sul controllo se la traccia è abilitata.

ResolveAdapter()

Ottiene l'adattatore di controllo responsabile del rendering del controllo specificato.

ResolveClientUrl(String)

Ottiene un URL che può essere utilizzato dal browser.

ResolveUrl(String)

Converte un URL in un URL utilizzabile nel client richiedente.

SaveControlState()

Salva le modifiche apportate allo stato del controllo server dopo il postback della pagina al server.

SaveViewState()

Salva le modifiche apportate allo stato di visualizzazione controllo server dopo il postback della pagina al server.

SetDesignModeState(IDictionary)

Imposta i dati in fase di progettazione per un controllo .

SetRenderMethodDelegate(RenderMethod)

Assegna un delegato del gestore eventi per eseguire il rendering del controllo server e del relativo contenuto nel controllo padre.

SetTraceData(Object, Object, Object)

Imposta i dati di traccia per la traccia in fase di progettazione dei dati di rendering, usando l'oggetto tracciato, la chiave dei dati di traccia e il valore dei dati di traccia.

SetTraceData(Object, Object)

Imposta i dati di traccia per la traccia in fase di progettazione dei dati di rendering, usando la chiave dei dati di traccia e il valore dei dati di traccia.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
TrackViewState()

Determina il rilevamento delle modifiche dello stato di visualizzazione al controllo server in modo che possano essere archiviate nell'oggetto del StateBag controllo server. Questo oggetto è accessibile tramite la ViewState proprietà .

Eventi

Nome Descrizione
DataBinding

Si verifica quando il controllo server viene associato a un'origine dati.

Disposed

Si verifica quando viene rilasciato un controllo server dalla memoria, ovvero l'ultima fase del ciclo di vita del controllo server quando viene richiesta una pagina ASP.NET.

Init

Si verifica quando il controllo server viene inizializzato, ovvero il primo passaggio del ciclo di vita.

Load

Si verifica quando il controllo server viene caricato nell'oggetto Page .

PreRender

Si verifica dopo il caricamento dell'oggetto Control , ma prima del rendering.

Unload

Si verifica quando il controllo server viene scaricato dalla memoria.

Implementazioni dell'interfaccia esplicita

Nome Descrizione
IControlBuilderAccessor.ControlBuilder

Per una descrizione di questo membro, vedere ControlBuilder.

IControlDesignerAccessor.GetDesignModeState()

Per una descrizione di questo membro, vedere GetDesignModeState().

IControlDesignerAccessor.SetDesignModeState(IDictionary)

Per una descrizione di questo membro, vedere SetDesignModeState(IDictionary).

IControlDesignerAccessor.SetOwnerControl(Control)

Per una descrizione di questo membro, vedere SetOwnerControl(Control).

IControlDesignerAccessor.UserData

Per una descrizione di questo membro, vedere UserData.

IDataBindingsAccessor.DataBindings

Per una descrizione di questo membro, vedere DataBindings.

IDataBindingsAccessor.HasDataBindings

Per una descrizione di questo membro, vedere HasDataBindings.

IExpressionsAccessor.Expressions

Per una descrizione di questo membro, vedere Expressions.

IExpressionsAccessor.HasExpressions

Per una descrizione di questo membro, vedere HasExpressions.

IParserAccessor.AddParsedSubObject(Object)

Per una descrizione di questo membro, vedere AddParsedSubObject(Object).

Metodi di estensione

Nome Descrizione
FindDataSourceControl(Control)

Restituisce l'origine dati associata al controllo dati per il controllo specificato.

FindFieldTemplate(Control, String)

Restituisce il modello di campo per la colonna specificata nel contenitore di denominazione del controllo specificato.

FindMetaTable(Control)

Restituisce l'oggetto metatable per il controllo dati contenitore.

Si applica a

Vedi anche